Домой Wp-Recall WP-Recall: Пишем свое дополнение и кастомизация Содержимое самописных аддонов отображается на каждой вкладке
3ответ(ов) в теме
dydaevskiy
не в сети 3 года
На сайте с 26.04.2016
Участник
Тем 30
Сообщения 162
1
23:37

Здравствуйте ребята, скажу сразу в php я начинающий.
Написал плагин для сайта называется "Подарок другу", отображается плагин хорошо но отображается только он один и на всех вкладках.
Код index.php плагина:

<?php

add_action('init','add_tab_podarok_drugu');
add_action('init','add_tab_podarok_drugu');
function add_tab_podarok_drugu(){
    rcl_tab('podarok','podarok_drugu','Подарок другу ',array('public'=>0,'class'=>'fa-gift','order'=>20));
	}

function podarok_drugu($user_lk){



 echo "<div class="dslc-modules-area dslc-col dslc-7-col dslc-first-col" data-size="7">"; 
 echo		"<div id="dslc-module-405" class="dslc-module-front dslc-module-DSLC_Html dslc-in-viewport-check dslc-in-viewport-anim-none  dslc-col dslc-12-col dslc-last-col  dslc-module-handle-like-regular  dslc-in-viewport" data-module-id="405" data-dslc-module-id="DSLC_Html" data-dslc-module-size="12" data-dslc-anim="none" data-dslc-anim-delay="0" data-dslc-anim-duration="650" data-dslc-anim-easing="ease" data-dslc-preset="none" style="animation: forwards 0.65s ease none;">";
			
 echo		"<div class="dslc-html-module-content"><div>";

 echo        "<a target="_blank" href="http://www.sto.sumy.ua/podarok-drugu/" class="g-promo-3">  ";
 echo  "<h2 style="margin: 0px 0px 0px;text-align:center">ПОДАРОК ДРУГУ</h2>";
 echo "<img class="alignnone  wp-image-422" src="http://www.sto.sumy.ua/wp-content/uploads/2016/05/hand-holding-a-gift.svg" alt="ingot-1" width="75" height="75"><p></p></a>";
 echo"</div></div>";
 echo		"</div><!-- .dslc-module -->";
 echo		"<div id="dslc-module-514" class="dslc-module-front dslc-module-DSLC_Text_Simple dslc-in-viewport-check dslc-in-viewport-anim-none  dslc-col dslc-12-col dslc-last-col  dslc-module-handle-like-regular  dslc-in-viewport" data-module-id="514" data-dslc-module-id="DSLC_Text_Simple" data-dslc-module-size="12" data-dslc-anim="none" data-dslc-anim-delay="0" data-dslc-anim-duration="650" data-dslc-anim-easing="ease" data-dslc-preset="none" style="animation: forwards 0.65s ease none;">";
 echo		"<div class="dslc-text-module-content"><p>Беспокойство о Вашем комфорте, это наша главная задача. Мы даем Вам возможность принять участие в акции «Подарок другу». Для этого&nbsp; нужно обратиться к администратору в автосервисе, и заказать карту для друга с подарочным балансом &nbsp;<strong>100 грн</strong>, либо просто заполнив заявку <strong>Online</strong>. Позаботьтесь&nbsp; о своих друзьях и близких, а заботу о себе оставьте нам.</p></div>";
  echo		"</div><!-- .dslc-module -->";
 echo		 "</div>";



	
//===========================================================================	
echo "<div style="text-align:center;" class="dslc-modules-area dslc-col dslc-5-col dslc-last-col" data-size="5">";
echo do_shortcode("[formidable id=22]");
echo "</div>";

}

Выглядит он вот так:

Вы не можете просматривать опубликованные ссылки

И на какую б вкладку я не нажал отображается только содержимое моего аддона, если его отключая содержимое других аддонов отображается нормально

Как исправить?

0
Вова (Otshelnik-Fm)
не в сети 25 минут
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
2
00:05

Здравствуйте.
У вас дублируется

add_action('init','add_tab_podarok_drugu')
надо убрать
И второе - это echo внутри функции podarok_drugu. Заменяйте его используя контактенацию и возвращая через return

Википедия:

Конкатена́ция (лат. concatenatio «присоединение цепями; сцепле́ние») — операция склеивания объектов линейной структуры, обычно строк.

Например заменив echo,

$out .=

(точка перед = и есть присоединение - контактенация)
а в конце делайте так
return $out;

Кстати - вы по сути выводите через шорткод, для вас хорошие новости:

Вы не можете просматривать опубликованные ссылки

:

Администратор может создавать произвольные вкладки личного кабинета с произвольным содержимым прямо из админки.

в 15-й версии создание вкладки будет еще проще. Как в редакторе вставить текст.

1
dydaevskiy
не в сети 3 года
На сайте с 26.04.2016
Участник
Тем 30
Сообщения 162
3
00:09

Круто! Спасибо получилось!

1
Тема закрыта. Публикация новых сообщений запрещена.