Malatya Escort Adana Escort

Небольшие усовершенствования MaxSite CMS
Блог фрилансера - сайты под ключ

Доработка MaxSite CMS

Просмотров: 7156Комментарии: 13
Движки

доработка движкаВ процессе работы с движком MaxSite CMS (на котором работают все мои стандалоне блоги), постоянно делаю маленькие усовершенствования которые облегчают работу с блогом. Самое первое усовершенствование касается лучшего ранжирования блога в поисковых системах в плане удаления дублей страниц. По умолчанию ссылка на любой пост, в зависимости от того куда кликнешь, имеет 2 варианта. Если кликнуть на название поста, то ссылка будет иметь вид /page/cms_nedvijimost.html, а если кликнуть на ссылку далее… то ссылка уже будет иметь такой вид /page/cms_nedvijimost.html#cut, а ведь эти ссылки ведут на одну и ту же страницу! Хотя многие и считают что поисковики не обращают внимания на это окончание ссылки, я считаю что лучше что бы все ссылки, ведущие на одну и ту же страницу, были одного вида.

Кстати, то же самое добавление лишних и никому не нужных знаков к окончанию ссылки есть и у WordPress. Зачем это придумали, непонятно. Логического объяснения я не вижу. Может кто нибудь из читателей мне объяснит? В общем меня такой вариант не устраивает и я удалил вывод дополнительных символов. Для этого я открыл файл application/maxsite/common/page.php и нашёл там строку

if ( !isset($r['a_link_cut']) )		
$r['a_link_cut'] = '#cut';
В этой строке удалил #cut. После этого все ссылки, независимо от того куда кликнешь, имеют нормальный вид без дополнительных символов.

Второе усовершенствование касается работы с графикой, которую я добавляю к каждому посту. Если загружаешь через встроенный файловый менеджер какую нибудь картинку, для которой в настройках указываешь создание превью, то, при включенном плагине Лайтбокс (или подобном) при клике на превью, в Lightbox красиво открывается полноразмерная картинка, без перезагрузки страницы. Но в ссылке на картинку, которую загрузил в варианте и превью и полноразмерная картинка, нужно постоянно вручную прописывать тег class="lightbox", иначе полноразмерная картинка откроется в новом, пустом окне. Что бы больше не тратить время на дописывание тега, я добавил этот тег в код движка. Для этого нужно открыть файл application/maxsite/admin/plugins/admin_files/admin.php и найти (в 0.8 версии движка 526 и 528 строки) такой код

$cod2 = stripslashes(htmlspecialchars( '' . $title_alt . '') );
Там две строки начинающиеся с $cod2 = выводящие код ссылки изображения. Теперь просто добавляем в эти строки
class="lightbox";
. Должно получиться так
$cod2 = stripslashes(htmlspecialchars( '' . $title_alt . '') );

И ещё, я привык к тому что ссылки на страницы с контентом должны заканчиваться указанием какое расширение у страницы. То есть например index.php или index.html … Адреса страниц без указания расширения, это обычно либо общие страницы записей, страницы категорий и рубрик, каталоги. А в MaxSite CMS по умолчанию все адреса формируются без указания расширения в конце. Поэтому я всегда добавляю его вручную при вводе алиаса названия страницы в поле – короткая ссылка. Это тоже не очень удобно, поэтому следующее усовершенствование, которым я пока только собираюсь заняться – автоматизировать добавление расширения. При положительных результатах обязательно поделюсь решением с желающими.

Недавно мой знакомый журналист (для которого я когда то делал сайт его газеты), попросил подсказать на каком украинском хостинге ему лучше всего разместить его новый проект. Я посоветовал ему CityHost.UA, так как слышал много хороших отзывов именно об этом хостинге. Да и цены там вполне адекватные. А так как он сейчас живёт именно на Украине, и его потенциальные читатели, соответственно тоже, то украинский хостинг именно то, что ему больше всего подходит.

Комментариев: 13 RSS

1 Яр Бест Сайт 20-01-2013 19:07

"#cut" означает, что браузеру надо перейти к якорю "cut" на странице. Если его нету - браузер показывает страницу с первой строки. Дело тут не в слове "cut", а в решётке - она отсылает браузер к якорю, название которого стоит после неё. Так что зря, как мне кажется, вы удаляете это дело - страдает удобство пользования.

2 Blogger 20-01-2013 21:07

Никакого неудобства нет, ведь при клике по обоим вариантам, браузер открывает страницу в одной и той же позиции! И, кроме как в MaxSite и WP больше я такого варианта не видел. Везде идёт прямая ссылка на полный текст. А насчёт якоря - это если бы я его проставлял в нужном мне месте. что бы прошедший по ссылке с приставкой попадал уже на определённое место, тогда да. Но кто то этим пользуется?

3 Яр Бест Сайт 21-01-2013 10:42

Проверил у себя на блоге - браузер открывает ссылку формата "www....#cut" начиная с текста статьи, "проматывая" шапку блога и вступительный текст (который до ката).

4 Blogger 21-01-2013 20:26

У меня промотало дальше, пришлось на пару строк опускать что бы увидеть границу между анонсом и постом. Возможно что у тебя это работает потому что стоит дефолтный шаблон. У меня на блоге и на других блогах, не замечал. В принципе идея понятна, зачем так сделано, но мне она не нравится.

5 Segoro 04-07-2013 09:37

На каждой странице между тегами

<head></head>
есть вот такая запись
<link rel="canonical" href="http://адрес_страницы/">
(кстати у Вас почему-то нет, вероятно очень старая версия maxsite). Эта запись сообщает поисковой машине, какой адрес страницы является каноническим, все остальные адреса ПС просто игнорирует. Так что на одну и ту же страницу может вести хоть 1000 разных адресов, вреда от этого не будет, робот знает какой адрес основной и какая страница главная с одним и тем же содержанием.

6 Blogger 04-07-2013 11:28

Да нет, версия 0.819

Жду выхода 0.85 что бы обновиться, так как придётся перекраивать шаблон.

7 Денис Скрипник 07-01-2014 17:30

Пытался найти указанные вами строки в файле admin.php плагина, отвечающего за загрузку файлов в версии МаксСайта 0.86 - не нашёл, там есть в строках 525-532:

$cod .= '' . t('Адрес') . '';
  $title_alt = str_replace('"', '&quot;', $title);
  $title_alt = str_replace('', '&gt;', $title_alt);
  $title_alt = str_replace('\'', '&#039;', $title_alt);
А $cod2 нашёл в строках 546 и 548:
$cod2 = stripslashes(htmlspecialchars( '') );
   else 
    $cod2 = stripslashes(htmlspecialchars( '') );
  }

8 Blogger 08-01-2014 09:52

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

10 Сергей 20-12-2015 20:30

Подскажи пожалуйста, как добавить rel="nofollow" для CUT

11 Blogger 20-12-2015 23:11

// приписка к ссылке на страницу полной записи
 if ( !isset($r['a_link_cut']) )  $r['a_link_cut'] = 'cut';

Помоему в этой же строке про которую я писал в начале поста нужно поиграться.

12 Сергей 22-12-2015 21:08

Я понимаю, что строка отвечает за вывод, но как это реализовать с rel="nofollow"

13 Blogger 23-12-2015 20:55

В том же файле ищем

# отображать ссылку?
      if ($r['show_cut'])
       $output .= mso_page_title( $page['page_slug'] . $r['a_link_cut'], $cut, 
        '', '', true, false, $r['link_page_type'] );

и ниже добавляем функцию замены

$output	= str_replace('

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question


Комментарий будет опубликован после проверки

     

  

(обязательно)