2017-06-24 2 views
0

Quand je publie un post sur WordPress de la zone ADMIN, le crochet « wp_insert_post » fonctionne très bien:Le hook wp_insert_post ne fonctionne pas lorsque je publie un message à partir d'un espace public. Mais fonctionne bien de la zone d'administration. Pourquoi?

function testing($post_id, $post, $update) { 
    error_log('testing'); 
} 
add_action('wp_insert_post', 'testing', 10, 3); 

Mais quand je publierai de la zone publique (et il n'y a aucune erreur ici), même en utilisant wp_insert_post de publier le post, la fonction ci-dessus n'est pas appelée.

Pourquoi cela se produit-il? Et est-ce possible de résoudre ça?

+0

Quel plug-in utilisez-vous pour afficher les messages depuis le frontal? Ou utilisez-vous votre propre code? – berend

+0

AccessPress Anonymous Post. Pourquoi? –

+0

Connaissez-vous un meilleur plugin, Berend? –

Répondre

1

D'accord, j'ai téléchargé votre plug-in et l'ai testé et pour moi cela fonctionne très bien. Vous devez savoir cependant que WordPress insère déjà le message lorsque vous demandez la page, et non après avoir appuyé sur Soumettre/Enregistrer. Anyway ici ce que j'ai posté dans le frontend:

frontend

J'ai ajouté un point d'arrêt dans votre fonction et il y arrive très bien:

phpstorm

Le problème doit être ailleurs, sont Êtes-vous sûr de vérifier le journal des erreurs au bon endroit?

+0

Berend, où exactement avez-vous mis ma fonction testing()? –

+0

Vous devez le placer dans votre fichier functions.php à partir de votre thème enfant, ou créer un plugin WordPress que j'ai fait. – berend

+0

Et où avez-vous mis le shortcode du plugin?