2014-01-15 1 views
0

Я пытаюсь создать пользовательский шаблон Wordpress, но я борюсь с некоторыми PHP ... Так что, в основном, я просто хочу показать аватар пользователей Buddypress. Это работает, когда я пишу:PHP в <img/> не работает на Wordpress

a href="<?php bp_member_permalink(); ?>"><?php bp_member_avatar('type=full&width=180&height=180'); ?></a> 

Но это означает, что изображение не имеет класс или что-нибудь ... Так что я хотел бы включить его в <img/>. Но это не работает, когда я делаю:

a href="<?php bp_member_permalink(); ?>"><img src="<?php bp_member_avatar('type=full&width=180&height=180'); ?>" alt=""/></a> 

Есть идеи?

+0

Вы изучили функцию 'bp_member_avatar'? – DanFromGermany

+0

Что он делает? Есть ли ошибка? Является ли src пустой? Дайте больше информации, если вы хотите получить ответ – Steve

+0

Что делает 'bp_member_avatar ('type = full & width = 180 & height = 180');' return? –

ответ

-1

EDIT: Извините. Я немного поспешил предположить, что вы его не отзывали. По-видимому, ваша php-функция полностью отбирает html.

Прежде всего, я бы заменил html-код в вашем сообщении, потому что он выглядит грязным и не очень читаемым. Но это зависит от вас.

Я бы закодировать это так, если я абсолютно пришлось смешивать HTML и PHP:

<? echo '<a href="' . bp_member_permalink() . '">' . bp_member_avatar("type=full&width=180&height=180") . '</a>'; ?> 

Во-вторых, вы должны найти функцию bp_member_avatar(), и редактировать HTML непосредственно там. В качестве альтернативы. Если вам просто нужен класс, стиль это IMG, это может быть сделано с помощью CSS и небольшого изменения в код:

<? echo '<p class="bp_member_avatar"><a href="' . bp_member_permalink() . '">' . bp_member_avatar("type=full&width=180&height=180") . '</a></p>'; ?> 

, а затем использовать этот CSS для доступа к изображению:

p.bp_member_avatar a img { 
     border: 1px solid #000; 
} 
+0

'bp_member_avatar' не возвращает тег изображения; он перекликается с ней на странице. И ваш окончательный отрывок просто все путается; я довольно уверен, что PHP задушит его из-за смешанных цитат. – cHao

+0

Если вы настаиваете на повторении аватаров, вместо этого используйте 'bp_get_member_avatar'. Он возвращает тег изображения, а не выплевывает его на страницу (что почти наверняка приводит к тому, что изображение аватара находится за пределами ссылки, так как строка будет оцениваться - вызывая вывод тега изображения - до того, как он будет эхом) , – cHao

+0

Очень сложно знать, что использовать и что не использовать, поскольку я не видел функций для этого плагина wordpress/пользовательского класса/функции или чего бы то ни было. Я пытаюсь дать правильный ответ на основе информации, заданной человеком, который задал вопрос. php-функции или классы, повторяющие html, как правило, являются просто плохой практикой, и что-то, что я сделал людям в здравом уме, не сделал бы. Я вижу, что вы исследовали эту специальную функцию и можете дать ответчику лучший ответ, чем я мог бы сделать из общей перспективы, не видя фактического кода. – inviz

1

По-видимому, BuddyPress по умолчанию задает класс avatar по аватарам. Вы должны это использовать.

Я смотрю на какой-то код BuddyPress, и ... ну ... вы знаете, какую строку вы проходите? Вы можете передать атрибут class так же, как и остальные, если по умолчанию вас не устраивает. Код, который генерирует тег, должен распознать id, class, alt, width, height и type.

<a href="<?php bp_member_permalink(); ?>"><?php 
    bp_member_avatar('type=full&width=180&height=180&alt=blah&class=whatever'); 
?></a> 

 Смежные вопросы

  • Нет связанных вопросов^_^