Thème WordPress d'Erreur “erreur Fatale: Impossible de ré-affecter auto-variable globale _POST”
il y a une erreur dans ce thème,
http://www.mafiashare.net/download/sound-rock-music-band-wordpress-theme/
lorsque j'essaie de l'activer, ce spectacle jusqu'
( ! ) SCREAM: Error suppression ignored for
( ! ) Fatal error: Cannot re-assign auto-global variable _POST in C:\wamp\www\web\wp-content\themes\soundrock\functions.php on line 48
Call Stack
# Time Memory Function Location
1 0.0014 364560 {main}( ) ..\themes.php:0
2 0.0043 433520 require_once( 'C:\wamp\www\web\wp-admin\admin.php' ) ..\themes.php:10
3 0.0048 451648 require_once( 'C:\wamp\www\web\wp-load.php' ) ..\admin.php:30
4 0.0052 463256 require_once( 'C:\wamp\www\web\wp-config.php' ) ..\wp-load.php:29
5 0.0061 553312 require_once( 'C:\wamp\www\web\wp-settings.php' ) ..\wp-config.php:90
donc dans functions.php sur la ligne 48, j'ai enlevé ce code, le thème est le travail, mais je veux pourquoi c'est jeter une erreur?
function events_meta_save($_POST, $post_id) {
global $wpdb;
if ( empty($_POST["event_social_sharing"]) ) $_POST["event_social_sharing"] = "";
if ( empty($_POST["event_start_time"]) ) $_POST["event_start_time"] = "";
if ( empty($_POST["event_end_time"]) ) $_POST["event_end_time"] = "";
if ( empty($_POST["event_all_day"]) ) $_POST["event_all_day"] = "";
if ( empty($_POST["event_booking_url"]) ) $_POST["event_booking_url"] = "";
if ( empty($_POST["event_address"]) ) $_POST["event_address"] = "";
$sxe = new SimpleXMLElement("<event></event>");
$sxe->addChild('event_social_sharing', $_POST["event_social_sharing"] );
$sxe->addChild('event_start_time', $_POST["event_start_time"] );
$sxe->addChild('event_end_time', $_POST["event_end_time"] );
$sxe->addChild('event_all_day', $_POST["event_all_day"] );
$sxe->addChild('event_booking_url', $_POST["event_booking_url"] );
$sxe->addChild('event_address', $_POST["event_address"] );
$sxe = save_layout_xml($sxe);
update_post_meta( $post_id, 'cs_event_meta', $sxe->asXML() );
}
Vous devez vous connecter pour publier un commentaire.
Remplacer
avec
Ne pas oublier de remplacer TOUS les
$_POST
à l'intérieur de l'état avec$_my_post
ou tout autre nom de u commeRaison, comme il est écrit dans les autres réponses:
. Faire des tentatives de ré-attribuer à la variable dans la table des symboles.
C'enregistré un mot de la langue. Le mettre dans une signature de fonction est, comme la définition d'une nouvelle variable à l'aide d'un mot de la langue comme le nom de la variable.
@snjflame, vous n'avez pas besoin d'utiliser
$_POST
en tant que paramètre d'une fonction, parce que c'est un superglobale variable. Vous ne pouvez pas redéfinir$_POST
variables; vous avez besoin de définir un "handler
" pour le$_POST
variable au début de votre fonction et utilisation ci-dessous.Par exemple: