Поздравляю! Вы попали в архивный блог! Все новые материалы публикуются на hmdw.meX

Web-разработка

Подписаться на эту рубрику по RSS

Web-разработка
13
сен 14

Wordpress - если у вас внезапно поломался RSS-фид

Всем привет!

Приключилась на днях забавная (или не очень) история - на активно разрабатываемом сайте на базе Wordpress вдруг ни с того ни с сего поломался RSS-фид. Как мы знаем он представляет из себя сформированный XML-документ. При посещении адреса site.ru/feed Firefox меня честно предупредил о том что не может распарсить файл из-за мешающих символов в самом его начале. Этими самыми символами оказались две пустые строчки (символы перевода каретки).

Из-за этого даже в заголовке ответа вместо xml сервер говорил что перед-ними html/text. Шаблон вывода фида естественно никто не трогал, но я для приличия все же заглянул в него - все ок.

Простое решение

Не буду тянуть кота за.. виноватым оказался один из разрабатываемых нами плагинов который никоим образом к формированию RSS не относится, но коллега-разработчик в коде плагина сделал вот такую конструкцию:

<?php
...тут код...
?>
<?
...тут код...
?>

И как вы наверное уже догадались, именно эти символы перевода каретки между php-кодом оказались в фиде. Выяснилось что Wordpress везде подгружает код активированных плагинов включая даже страницу с фидом.

Объединил код в один блок и проблема исчезла.

Вот так и получается что вроде бы не связанные друг с другом вещи на самом деле сильно влияют.

Удачи вам в кодинге!

10
авг 14

Локальный вебсервер без боли с Docker

Всем доброго времени суток!

Довольно давно я сюда уже не писал, но сегодня решил сделать исключение и написать пост с решением одной проблемы - лично мне уже давно лень тестировать различные CMS на PHP хотя бы потому что приходится делать однотипные действия - добавить хост в Apache, добавить пользователя и базу в MySQL. А потом еще не забыть все это удалить чтобы не замусоривалось.

Сразу оговорюсь что для локальной разработки я в основном использую Vagrant и Docker т.к. не хочу захламлять основную систему установленным LAMP-стеком. Обычно после пары тройки однотипных добавлений новых хостов получалось что виртуальные машины и контейнеры замусоривались никому не нужными БД и конфигами для сайтов которые уже неактуальны. Да и в hosts нет уже желания видеть бесчисленную череду всяких blog.dev,test.dev,site.dev и т.д.

Ну а сегодня я решил сказать «Хватит!».

Прочитать полностью

03
июл 14

Битрикс. Что делать если нет доступа к админке.

Добрый вечер!

Частенько возникает такая ситуация когда клиенты дают доступ к сайту по SSH/FTP но при этом напрочь забывают завести нового пользователя администратора в 1С-Битрикс. И спросить иногда бывает не у кого.

В этом случае нам помогут два варианта:

1) Подправить в таблице b_user у текущего администратора e-mail на свой и «вспомнить пароль»

2) Завести пользователя-админа средствами битрикс

По мне второй способ намного гуманнее и проще. Вот код странички которую нужно открыть для создания админа:

<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$user = new CUser;
$arFields = Array(
  "NAME"              => "Сергей",
  "LAST_NAME"         => "Иванов",
  "EMAIL"             => "az@az.ru",
  "LOGIN"             => "support",
  "LID"               => "ru",
  "ACTIVE"            => "Y",
  "GROUP_ID"          => array(1),
  "PASSWORD"          => "aaa123456",
  "CONFIRM_PASSWORD"  => "aaa123456",
  // "PERSONAL_PHOTO"    => $arIMAGE
);
$ID = $user->Add($arFields);
if (intval($ID) > 0)
    echo "Пользователь успешно добавлен.";
else
    echo $user->LAST_ERROR;
?>

Как вы поняли у нас получается пользователь с логином support и паролем aaa123456 и принадлежит он 1 группе, то есть к администраторам.

19
мар 14

Сайтики

Всем привет!

Пока на что-то серьезное нет времени совсем. Но выкроил минутку и запилил несколько простеньких проектов:

http://tatarlar.ga - коллекция видороликов на татарском языке. В сети их не так много, а места где они собраны воедино я пока не встречал. Поэтому решил сделать сам. Дизайна как такового нет - накидал простенький интерфейс на Bootstrap и оживил все это на Yii. Особенно полезными думаю станут уроки татарского языка.

http://ulsk.re/tro/ - бложек на Wordpress с ретро-фотографиями моего родного города Ульяновска.

https://github.com/rhamdeew/ToTwitter - проект с открытым исходным кодом для экспорта RSS-ленты в Twitter. Написано на PHP с применением Phalcon. Очень простой, но тем не менее рабочий проект.

Об остальном напишу чуть позже. Всем мир!

13
нбр 13

Битрикс. Делаем ссылки на скачивание файлов.

Всем привет!

Довольно часто возникает необходимость в размещении на сайте ссылок для скачивания каких либо материалов (например .pdf, .jpg, .mp3) которые обычно пытается отобразить браузер. Для этого при отдаче файла сервер должен вернуть браузеру необходимые заголовки. В этом нам поможет php.

Признаться честно для этих целей я нашел уже готовый код и слегка подпилил под свои нужды.

В итоге получился вот такой вот скрипт. Обращаться к нему надо так: /attach_download.php?file=FILE_ID, где FILE_ID это числовой идентификатор файла загруженного в свойство инфоблока.

Далее листинг:

Прочитать полностью