php-wordpress:似乎无法将变量追加到href url

时间:2019-04-17 17:37:37

标签: php html wordpress hyperlink buddypress

在下面的几本教程中,我试图将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>Facebookmike.jones是指向www.facebook.com/<a的超链接。语法已与示例代码完全匹配。这是怎么回事?

我正在使用php 7.2.15。

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

2 个答案:

答案 0 :(得分:1)

我只会回显$ fb,因为那是将要更改的变量。根据需求,我会将其回显为JavaScript可以选择的隐藏html元素或jQuery。

答案 1 :(得分:0)

如果您使用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');

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