Ich möchte URL Rewrite für eine Webseite verwenden. Ich habe den folgenden Code in functions.phpURL Rewrite Fehler in PHP (404 Fehler)
function add_query_vars($aVars) {
$aVars[] = "play";
return $aVars;
}
// hook add_query_vars function into query_vars
add_filter('query_vars', 'add_query_vars');
function add_rewrite_rules($aRules) {
$aNewRules = array('^([^/]*)/([^/]*)/?$' => 'index.php?pagename=$([^/]*)/([^/]*)/&play=$matches[1]');
$aRules = $aNewRules + $aRules;
return $aRules;
}
// hook add_rewrite_rules function into rewrite_rules_array
add_filter('rewrite_rules_array', 'add_rewrite_rules');
Und diesen Code in single.php, wo ich eine Single- {benutzerdefinierte} .php auf dem Parameter umfassen I erhalten:
$url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
$parts = parse_url($url);
parse_str($parts['query'], $query);
$parametro = $query['play'];
if ($parametro == 'jugar')
{
include(get_template_directory() . '/single-play.php');
}
else if ($parametro == 'full')
{
include(get_template_directory() . '/single-full.php');
}
Damit Code ich möchte die URLS neu zu schreiben, statt Verwendung von Beispiel ../juegos/ddtank/?play=full
I ../juegos/ddtank/full/
auch für .../juegos/fishao/?play=jugar
ich verwenden möchte .../juegos/fishao/jugar
Jedes Mal, wenn ich die URL mit ../jugar/
oder ../full/
lade, habe ich einen Fehler 404.
Und dies ist auf den Permalink Konfiguration in Wordpress: http://www.juegoskids.com /juegos/%postname%/
Können Sie mir helfen, dieses Problem beheben?
Sie können dies in PHP nicht tun. Sie müssen dies auf der Serverebene tun, z. '.htaccess' schreibt Regeln um. Denken Sie daran, dass die meisten [Entwicklungs-Frameworks] (http://codegeekz.com/best-php-frameworks-for-developers/) Unterstützung für diese integrierte Funktion haben. Sie verfügen über eine Routing-Schicht, um URLs bestimmten Aktionen innerhalb Ihres Codes zuzuordnen . Sehen Sie sich Dinge wie [Fat-Free Framework] (https://fatfreeframework.com/) und [Laravel] (http://laravel.com/) an, um zu sehen, ob sie Ihnen helfen können, Ihr Problem einfach zu lösen. – tadman
Ihre Rewrite-Regel ist durcheinander, aber dies kann in WP getan werden, ich weiß nicht, worüber Tadman spricht. Was ist "Juegos"? Ein benutzerdefinierter Beitragstyp? Seite? Oder nur etwas, das dem Permalink vorangestellt ist? – Spartacus