ich möchte ein neues Feld "title" auf Kommentar von WordPress, nach dem Einfügen der neuen Eingabefeld in einer Standardform von WordPress ich fügte diese in meinem function.php
für den Titel zu speichern, wenn neu Kommentar wird gesendet.einfache Bedingung auf wordpress function.php funktioniert nicht
dies der Code, den ich für den Titel speichern verwenden ist:
function add_comment_meta_values($idcommento) {
global $post;
$idcommento= get_comment_ID();
$tipodipost= get_post_type($post->ID);
if(get_post_type($post->ID) == 'service') {
if(isset($_POST['title_svz'])) {
$title= wp_filter_nohtml_kses($_POST['title_svz']);
add_comment_meta($idcommento , 'title_svz', $title, false);
}}
}
add_action ('comment_post', 'add_comment_meta_values', 1);
dies nur Code arbeiten, wenn entfernen Sie den Zustand:
if(get_post_type($post->ID) == 'service') {}
und ich verstehe nicht, warum, habe ich bereits versucht, diese Bedingung in comment.php oder in einer Fußzeile mit einfacher Funktion wie dieser
function test_function() {
if(get_post_type($post->ID) == 'service') { echo 'done'; }
}
add_action('wp_footer', 'test_function');
und es ist Arbeit, also ich don verstehe nicht, warum nicht in meinem primären Code arbeiten, keine Idee?
GELÖST MYSELF
THIS IS THE NEW CODE:
function add_comment_meta_values($idcomment) {
$comment_full = get_comment($idcomment);
$idpost = $comment_full->comment_post_ID;
$typepost= get_post_type($idpost);
if($typepost == 'service') {
if(isset($_POST['title_svz'])) {
$title= wp_filter_nohtml_kses($_POST['title_svz']);
add_comment_meta($idcomment , 'title_svz', $title, false);
} }
}
add_action ('comment_post', 'add_comment_meta_values', 10, 1);
if ($ post-> post_type == 'Service') – user5200704
versucht, aber das Ergebnis ist das gleiche, nicht arbeiten. – SURTLER77