Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正在寻找使mysite.com/product成为mysite.com/product?userid=1(WordPress站点)的方法_Wordpress_Url_Dynamic_Slug - Fatal编程技术网

正在寻找使mysite.com/product成为mysite.com/product?userid=1(WordPress站点)的方法

正在寻找使mysite.com/product成为mysite.com/product?userid=1(WordPress站点)的方法,wordpress,url,dynamic,slug,Wordpress,Url,Dynamic,Slug,我希望我的网站上包含/product的所有页面在URL末尾自动添加一个用户id slug。它应该能够提取分配给登录用户的用户id,并将用户id添加到URL。页面应该完全相同,只有URL末尾的用户id Ex) mysite.com/product->mysite.com/product?userid=1(当用户1登录时) mysite.com/product->mysite.com/product?userid=2(当用户2登录时) 像这样思考,但我不懂PHP 如果-用户已登录 及 如果-页面UR

我希望我的网站上包含/product的所有页面在URL末尾自动添加一个用户id slug。它应该能够提取分配给登录用户的用户id,并将用户id添加到URL。页面应该完全相同,只有URL末尾的用户id

Ex) mysite.com/product->mysite.com/product?userid=1(当用户1登录时) mysite.com/product->mysite.com/product?userid=2(当用户2登录时)

像这样思考,但我不懂PHP

如果-用户已登录 及 如果-页面URL包含/product 然后 获取WordPress用户id 及 将用户id附加到url


谢谢

以下代码将帮助您实现您的需求,请尝试一下,如果有帮助,请告诉我

function add_userid_product_page_url(){
    global $user_ID;
    if( is_user_logged_in() && is_page('product') && !isset( $_GET['userid'] ) ) : //Check User Logged In and Product Page and User Id not set in URL
        wp_safe_redirect( add_query_arg('userid', $user_ID, get_permalink() ) );
        die;
    endif; //Endif
}
add_action('template_redirect', 'add_userid_product_page_url');

你好非常感谢你的帮助。我尝试使用CodeSnippets插件将您的代码添加为代码段,但是,它不起作用。也许在帐户上使用用户的“用户名”比使用用户ID更容易??你能告诉我这有什么问题吗?因为我已经测试过这段代码,你可以使用用户名而不是用户ID,但这取决于你的后续代码是如何完成的,然后你可以使用这段代码进行更改,我刚刚根据您的问题创建了代码谢谢您的回答。我不确定是什么问题。我不懂PHP。我只知道,当我将代码放入functions.php子主题时,它不起作用。这是我的暂存站点:如果我向您发送我的暂存站点的FTP信息,您可以这样做吗?好的,请亲自联系我@DougDemagistris