【问题标题】:php-wordpress: cannot seem to append variable to href urlphp-wordpress:似乎无法将变量附加到 href url
【发布时间】:2019-09-08 00:48:07
【问题描述】:

在以下几个关于此的教程中,我试图将一个 php 变量附加到一个 标签内的 url,但遇到了很多麻烦:

<?php
$fb='mike.jones';

if($fb) {
echo '<a href="http://facebook.com/' . $fb . '">Facebook</a>';
}
?>

它不仅仅是回显“Facebook”并链接到http://facebook.com/mike.jones,而是在前面输出:mike.jones&gt;Facebookmike.jones 是指向www.facebook.com/&lt;a 的超链接。语法已与示例代码完全匹配。这里发生了什么?

我使用的是 php 7.2.15。

编辑:这是我尝试过的示例之一: https://wisdmlabs.com/blog/add-social-media-links-buddypress-profiles/

【问题讨论】:

    标签: php html wordpress hyperlink buddypress


    【解决方案1】:

    如果您使用 WordPress 并编辑页面/帖子,则 php 代码将无法正确执行,因为它通常在保存到数据库之前被修剪和格式化。您可能应该研究一个允许 PHP 代码的插件,例如 Insert PHP Code Snippet,它允许您将短代码添加到您的页面/帖子以执行您的 PHP。

    编辑: 尝试在您的 buddypress.php 文件中使用以下内容,而不是您与我分享的内容:

    function wdm_add_social_icons() {
      $user_id = $bp->displayed_user->id; // get BP user id
      $fb_page = xprofile_get_field_data('Facebook Profile', $user_id); // get data for user profile field
      if ($fb_page) {
        echo '<a href="https://facebook.com/' . $fb_page . '">FACEBOOK</a>';
      }
    }
    add_filter('bp_profile_header_meta', 'wdm_add_social_icons');
    

    为了安全起见,我还会清除您的浏览器缓存。

    【讨论】:

    • 您的意思是在 wordpress 仪表板的文本编辑器中吗?我一直在直接编辑底层的php文件,对于其他的php代码,它一直运行良好。
    • @machump,我很抱歉。不知道您是否正在编辑文件或页面/帖子。因此,使用您发布的代码,您没有实现Facebook 的预期输出,而是收到mike.jones>Facebook——对吗?
    • 完全正确。所有在线示例似乎都导致了类似的意外结果
    • 您所遵循的教程链接似乎比您提供的自定义插件的代码更多。 1)你把这段代码放在什么文件里? 2)你能提供你在所说文件中的代码吗? (当然忽略任何私人/敏感信息)
    • 我将代码放在一个名为buddypress.php 的文件中,该文件位于我的主题目录中。选择用户的个人资料将使用buddypress.php 作为模板。以下是与本练习相关的文件中的一段代码:&lt;?php $fb_page = "http://www.facebook.com/" . xprofile_get_field_data('Facebook', 1,'comma'); echo '&lt;a href=' .$fb_page .'&gt;FACEBOOK&lt;/a&gt;';。经历了几次迭代,这是最后一个失败的版本。
    【解决方案2】:

    我只会回显 $fb,因为这是将要改变的变量。根据要求,我会将其回显到 JavaScript 可以拾取的隐藏 html 元素或 jQuery。

    【讨论】:

      猜你喜欢
      • 2014-02-24
      • 2017-04-27
      • 2020-03-26
      • 1970-01-01
      • 2019-02-11
      • 2018-06-27
      • 1970-01-01
      • 1970-01-01
      • 2015-11-27
      相关资源
      最近更新 更多