Партнерки вебмастерам

Баннер

Кто онлайн

Сейчас 105 гостей онлайн

Статистика

Архив содержит 29 файлов в 11 категориях. На данный момент файлы скачаны 102262 раз.
Подключение нового сервиса к момпоненту SEO Tools PDF Печать E-mail

Как я погляжу, уже проявляется интерес к моему компоненту.

Вот выпал часок свободного времени, и я решил подключить новый сервис. это - проверка обратных ссылок на ваш сайт. Правда, пока можно указывать только один ссылающийся сайт. Так как скрипт выполняется на сервере, то имеется ограничение по времени работы скрипта. Потому, при желении проверить ссылки сразу на нескольких сайтах выплывает ошибка (истечение лимита времени).

Ну да это пока нас мало интересует. Тема моей сегодняшней статьи каксается непосредственно подключения нового сервиса в компонент. В базоваой версии, которую можно скачать с сайта, Сервиса проверки обратной ссылки не было, поэтому, я решил его подключить пока вместо Сервиса проверки по многим датацентрам. В связи с этим, на сайт нужно закачать 2 файла: linkcheck.php в папку mod и linkcheck.tpl в папку templates. В файле seotools.php следует пдключить наш файл linkcheck.php, дописав строку include JPATH_COMPONENT.'/mod/linkcheck.php';

Переходим к файлу xajax.system.php.
В блоке xajax функций дописываем функцию // Проверка обратных ссылок-------------------------------------------------
function CheckLink ($formData)
{
$objResponse=new XajaxResponse();
$result =  linked(print_r( $formData['urls_from'], true ),print_r( $formData['url_to'], true ));

$objResponse->assign( "CheckDiv", "innerHTML",$result); // Все DIV-ы служат для вставки ответа сайта
return $objResponse; 
}
//---------------------------------------------------------------------------

И не забываем ее зарегистрировать
$xajax->registerFunction( "CheckLink" ); // регистрация функции

Теперь нам осталось сделать еще маленькую правку в файле view.html.php:
Я просто пока исправил строку if($seo_cf['gen-status'] != 1 OR $seo_cf['dc_check-status'] !=1) {$dc_check  = "error" ;} else $dc_check  ='linkcheck';

на  if($seo_cf['gen-status'] != 1 OR $seo_cf['dc_check-status'] !=1) {$dc_check  = "error" ;} else $dc_check  ='dc_check';

Ну и конечно исправляем описание сервиса в файле шаблона default.php.

И последний штрих, в админке разрешаем работу сервиса, заменив нулевое значение на "1" в позиции "dc_check-status" файла seo_conf.php из папки data.

Вот, в принципе и все. особого труда подключения xajax не вызывает, проблемы могут возникать только при написании исполняемого кода в файлах папки mod. Лично у меня, при переносе с Денвера обычно возникают конфликты по файловым путям.

Важно! Компонент работает в кодировке UTF-8, поэтому воизбежание конфликтов, сохраняйте все файлы в указанной кодировке. Для сайто использующих ANSI - все файлы нужно перекодировать в ANSI.

15.12.2010 Добавлено:

Архив полностью модифицирован.  Изменен модуль, подключающий xajax. Теперь он подключит любой компонент, имеющий в составе файл xajax.system.php
Идея кодинга заимствована из одноименного плагина, правда для версии 1.0. У меня с плугом чето не пошло, а модуль пошел. Компонент преределан. Рабочий запуск осуществлен. Теперь жду предложений и комментариев для дальнейшего усовершенствования. Сами понимаете,  что может сделать не профессионал в этой области, да и еще на скоряк!!! Но для учебы покатит. Много дал описаний непосредственно в кодах. Будут вопросы - смогу ответить.

И еще. Не удаляю ранее написаное, но не все - возможно, это кому-либо поможет разобраться в теме. Одно скажу: все изменения уже произведены.

Самое главное, жду вопросов и предложений, на которые с удовольствием отвечу. Ведь свой компонент я знаю хорошо. И со "здравствуймир" его не стоит сравнивать.

А вообще, тема весьма интересна.  И открывает многие перспективы.  Впрочем, это потом...

PS. Не мешает добавить, так сказать, упредить вопрос: "А почему я использовал мод, а не плуг?" А потому, что плуг может некорректно работать с другими компонентами. А мод приходится привязывать к компоненту. Поэтому, мод не будет включаться, как например плуг xajax.system, при загрузке каждой страницы. А только лишь при указанной странице. Не знаю как у кого, но у меня так...