Wordpress url中的用户名引用
我使用wordpress,我试图将usename var从www.mysite.com/username传递到wordpress页面中的var。我有多个问题。我不知道重写是否不起作用,wordpress页面会注释掉我的php。有什么建议吗?有人知道如何做到这一点吗 .htaccess文件:Wordpress url中的用户名引用,wordpress,rewrite,Wordpress,Rewrite,我使用wordpress,我试图将usename var从www.mysite.com/username传递到wordpress页面中的var。我有多个问题。我不知道重写是否不起作用,wordpress页面会注释掉我的php。有什么建议吗?有人知道如何做到这一点吗 .htaccess文件: RewriteEngine On RewriteRule ^index\.php$ - [L] RewriteRule ^([^/.]+)$ /index.php?username=$1 [L] Rewrit
RewriteEngine On
RewriteRule ^index\.php$ - [L]
RewriteRule ^([^/.]+)$ /index.php?username=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
您不能将www.mysite.com/username的变量传递给WordPress页面中的一个变量,因为这意味着所有链接都将指向同一个页面和用户名的变量,您将遇到很多冲突和问题 我可以在创建个人资料页面时与您分享我的代码。例如:个人资料和具有相当永久性的 www.mysite.com/profile/eek 这将访问Wordpress页面配置文件,我在主题中将其设置为page-Profile.php,然后将下一个变量(例如:Eek)放入一个变量,在我的示例中,它将是$who变量 将其添加到functions.php
add_filter( 'page_rewrite_rules', 'profile_page_rewrite_rules' );
function profile_page_rewrite_rules( $rewrite_rules )
{
end( $rewrite_rules );
$last_pattern = key( $rewrite_rules );
$last_replacement = array_pop( $rewrite_rules );
$rewrite_rules += array(
'(.+?)/([^/]+)/?$' => 'index.php?pagename=$matches[1]&who=$matches[2]',
$last_pattern => $last_replacement,
);
return $rewrite_rules;
}
add_rewrite_tag('%who%','([^&]+)');
然后从设置->永久链接设置->保存更新永久链接
在page-profile.php中
要获取当前用户,我有以下代码段:
<?php $who = (get_query_var('who')) ? get_query_var('who') : 0;
if($who){$user = get_user_by('login', $who);}
else{
if( is_user_logged_in() ){
$user = wp_get_current_user();
}else{$user = 0;}
}
?>
有关向WordPress添加重写规则的更多详细信息,请参见此处:
另外,我正在使用一个很酷的插件来调试我的重写,它是这样的:(是的,它已经2年了,但它仍然像一个魔咒一样工作)
希望这是有帮助的 如果我理解这个问题,你走错了方向。。。因此,也许你会按照这种方式来做(以防2018年的任何人仍会落入这个答案) 但也可能是:
https://www.axew3.com/w3/dropbox/?u=axew3
仅使用以下命令检查传递的var:
$_GET['u'];
但也许我误解了这个问题
$_GET['u'];