PHP多站点Wordpress,需要2个函数才能在不破坏网站的情况下工作

PHP多站点Wordpress,需要2个函数才能在不破坏网站的情况下工作,php,wordpress,shortcode,multisite,Php,Wordpress,Shortcode,Multisite,我是一名全新的程序员,我只是在尝试functions.php文件(在子主题中),看看是否可以让函数正常工作 我的目标是:我使用多站点wordpress设置来创建一个模型网站。当管理员为每个模型创建一个配置文件时,他们的名字会在站点1上用于他们唯一的url,而在站点2上则表示“欢迎模型名称” 站点1:供所有人查看的公共站点 站点2:仅限私人模特查看和更新个人详细信息的站点 在Site1上,我有一个页面上所有模型的完整列表供公众浏览。每个模型都有自己独特的配置文件URL,其中包含他们的名字和姓氏。例

我是一名全新的程序员,我只是在尝试functions.php文件(在子主题中),看看是否可以让函数正常工作

我的目标是:我使用多站点wordpress设置来创建一个模型网站。当管理员为每个模型创建一个配置文件时,他们的名字会在站点1上用于他们唯一的url,而在站点2上则表示“欢迎模型名称”

站点1:供所有人查看的公共站点 站点2:仅限私人模特查看和更新个人详细信息的站点

在Site1上,我有一个页面上所有模型的完整列表供公众浏览。每个模型都有自己独特的配置文件URL,其中包含他们的名字和姓氏。例如

在站点2上,当模型登录到该站点时,我需要主页显示2个名称使用。一个是他们的显示名,使用了一个短代码,这样我就可以说“欢迎萨曼莎·丽贝卡”(我已经使用了这个代码)

另一个是在同一个私人页面上的按钮,他们可以按下按钮直接进入他们的“公共”个人资料页面。这就是我需要帮助的

在理想的情况下,我想取他们的名字和姓氏(所有配置文件都是管理员创建的),并在两者之间加一个破折号,这样我就可以使用我尝试过的名称,并使用以下内容:

/* username in url using [url_user] shortcode */

function custom_shortcode_func() {
ob_start();
$current_user = wp_get_current_user();
echo $current_user->user_firstname . '-' . $current_user->user_lastname;
$output = ob_get_clean();
return $output;
}
add_shortcode('url_user', 'custom_shortcode_func');
但我似乎无法让它们在函数文件中同时工作,而不会出现这样的错误

Fatal error: Cannot redeclare custom_shortcode_func() (previously declared in /home/domain/public_html/wp-content/themes/child-theme/functions.php:47) in /home/domain/public_html/wp-content/themes/child-theme/functions.php on line 65

请有人能帮我把它作为一个有效的功能。谢谢。

我知道您的问题是两个短代码中都有您使用了相同的函数名。请更改第二个函数名,如下面的代码所示

/* username in url using [url_user] shortcode */



 function custom_shortcode_func_url_username() {
    ob_start();
    $current_user = wp_get_current_user();
   $output = $current_user->user_firstname . '-' . $current_user->user_lastname;

    return $output;
    }
    add_shortcode('url_user', 'custom_shortcode_func_url_username');
更改第二个函数名,如上面代码所示,您的问题将得到解决。由于两个短代码的函数名相同,所以出现错误。函数名应该是唯一的。不允许多次使用同一名称。
有关用于定义函数名规则的详细信息

我发现您的问题是两个短代码中都有您使用了相同的函数名,请更改第二个函数名,如下面的代码所示

/* username in url using [url_user] shortcode */



 function custom_shortcode_func_url_username() {
    ob_start();
    $current_user = wp_get_current_user();
   $output = $current_user->user_firstname . '-' . $current_user->user_lastname;

    return $output;
    }
    add_shortcode('url_user', 'custom_shortcode_func_url_username');
更改第二个函数名,如上面代码所示,您的问题将得到解决。由于两个短代码的函数名相同,所以出现错误。函数名应该是唯一的。不允许多次使用同一名称。
有关用于定义函数名规则的详细信息

检查我的答案你有两次相同的函数名这就是你的Geing错误的原因。检查我的答案你有两次相同的函数名这就是你的Geing错误的原因。我已经复制并粘贴了你建议的代码,所以首先我使用上面的代码,然后直接在下面粘贴你的代码,但当我按下链接时,它只是创建了以下url“”(它忽略了名字和姓氏)@chamber你找到解决方案了吗?不,我想知道我是否遗漏了语法或其他内容,但我正在直接复制和粘贴,同样的问题。名字和姓氏不显示,只有“-”显示(domain.com/models/-)我使用此链接来帮助参考我遇到此链接的原因稍有不同,但可能会有所帮助?我已经复制并粘贴了您建议的代码,因此首先我使用上面的代码,然后直接在下面粘贴了您的代码,但当我按下链接时,它只创建了以下url“”(忽略了名字和姓氏)@chamber您找到解决方案了吗?不,我正在尝试了解是否我遗漏了语法或其他内容,但我直接复制和粘贴,同样的问题。名字和姓氏不显示,只有“-”显示(domain.com/models/-)我使用此链接来帮助参考我遇到此链接的原因稍有不同,但可能会有所帮助?