В следующих уроках я пытаюсь добавить переменную 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>Facebook спереди и mike.jones является гиперссылкой на www.facebook.com/<a. Синтаксис точно соответствует образцу кодов. Что здесь происходит?

Я использую PHP 7.2.15.

Изменить: вот один из примеров, которые я попробовал следующие: https://wisdmlabs.com/blog/add-social-media -links - BuddyPress - профили /

0
machump 17 Апр 2019 в 20:37

2 ответа

Лучший ответ

Если вы используете WordPress и редактируете страницу / пост, код php не будет выполняться правильно, потому что он обычно обрезается и форматируется перед сохранением в базе данных. Вероятно, вам стоит заглянуть в плагин, который позволяет код PHP, например, Вставить код PHP Фрагмент, который позволит вам добавить шорткод на ваши страницы / посты для выполнения вашего 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');

Я бы также очистил кеш вашего браузера, чтобы быть в безопасности.

0
KamaranL 17 Апр 2019 в 20:03

Я бы повторил только $ fb, поскольку эта переменная будет меняться. В зависимости от требований я бы добавил его к скрытому html-элементу, который мог бы использовать JavaScript или jQuery.

1
Dwayne Gibbs 17 Апр 2019 в 21:17