Создание простого HTML шаблона

Приведу пример простого HTML шаблона.

Элемент указывающий тип документа:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

Начало документа:

<HTML>

Начало заголовка документа:

<HEAD>

Указание языка документа, кодировки:

<META http-equiv="Content-Type" content="text/html; charset=windows-1251">
<META NAME="Description" content="Краткое описание страницы">
<META NAME="Keywords" content="Ключевые слова через запятую">

Язык таблицы стилей CSS:

<META http-equiv="Content-Style-Type" content="text/css">

Начало описания стилей:

<STYLE type="text/css">

Цвет ссылок:

A:link {COLOR: green; TEXT-DECORATION: none}

Цвет посещенных ссылок:

A:visited {COLOR: red; TEXT-DECORATION: none}

Цвет ссылки при клике по ней:

A:active {COLOR: orange; TEXT-DECORATION: none}

Цвет ссылки при наведении на нее

A:hover {COLOR: black; TEXT-DECORATION: underline}

Цвет фона документа, параметры шрифта по умолчанию

BODY {BACKGROUND: white; COLOR: black; FONT-FAMILY: Verdana,Arial,sans-serif; FONT-SIZE: 10pt}

Окончание таблицы стилей:

</STYLE>
<TITLE>Название документа</TITLE>

Конец заголовка:

</HEAD>

Начало тела документа:

<BODY>

Текст документа ….

Конец тела документа:

</BODY>

Последний тег обозначающий конец документа:

</HTML>

Также с помощью сторонних сервисов, например csstemplater.com можно генерировать готовые шаблоны.

Question2Answer SEO URL. Замена кириллических символов латинскими

Заметил что в Question2Answer при использовании кириллических символов в вопросах ссылки создаются соответственно типа example.com/1/D0%B%DD%D1%D1% и т.д.

Чтобы кириллические символы в ссылках на вопросы автоматически заменялись на латинские и ссылки были вида example.com/1/test необходимо в файле QA-base.php в начале функции qa_q_request() примерно на 1204 строке добавить код:

$cyr = str_replace(array('а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж', 'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'ь', 'ъ', 'ы', 'э', 'ю', 'я'), array('a', 'b', 'v', 'g', 'd', 'e', 'jo', 'zh', 'z', 'i', 'i', 'k', 'l', 'm', 'n', 'o', 'p', 'r', 's', 't', 'u', 'f', 'h', 'ts', 'ch', 'sh', 'sch', 'j', 'j', 'y', 'e', 'y', 'ya'), $title);
        return (int)$questionid.'/'.$cyr;

Вставка рекламы между сообщениями форума phpBB

Вставка рекламы между сообщениями форума phpBB делается элементарно, необходимо всего лишь в файле активной темы viewtopic_body.html найти фрагмент кода:

<!-- END postrow -->

И перед ним вставить следующее:

<!-- IF (postrow.S_ROW_COUNT eq 0) || (S_USER_LOGGED_IN eq 0 && postrow.S_ROW_COUNT eq 4) -->

<table class="tablebg" width="100%" cellspacing="0">
<tr class="row1">

<td class="profile" align="center" valign="middle">
<b class="postauthor">Реклама</b>
</td>
<td class="row3h" width="100%">
</td>
</tr>

<tr class="row1">

<td valign="top" class="profile">
<table cellspacing="4" align="center" width="150">

</table>

<span class="postdetails">

</span>

</td>
<td valign="top" colspan="2">
<table width="100%" cellspacing="5">
<tr>
<td>
<table width="100%" cellspacing="0">
<tr valign="middle">
<td class="gensmall" align="{S_CONTENT_FLOW_END}">

</td>
</tr>
</table>

<div class="postbody">

КОД РЕКЛАМЫ

</div>
</td>
</tr>
</table>
</td>
</tr>

<tr class="row1">

<td align="center" class="profile">

</td>
<td colspan="2"></td>
</tr>

<tr>
<td class="spacer" colspan="3" height="1"><img src="images/spacer.gif" alt="" width="1" height="1" /></td>
</tr>
</table>
<!-- ENDIF -->

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

<!— IF (postrow.S_ROW_COUNT eq 0) || (S_USER_LOGGED_IN eq 0 && postrow.S_ROW_COUNT eq 4) —>

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

Проверка ссылок с помощью LinkChecker

LinkChecker — инструмент проверки сайта на несуществующие ссылки.

Установка в Linux Ubuntu/Debian:

sudo apt-get install linkchecker

Примеры запуска:

linkchecker http://www.example.net
linkchecker --ignore-url=^mailto: mysite.example.org (исключая email адреса)
linkchecker ../index.html (проверка локального файла)
linkchecker www.example.com
linkchecker -r0 ftp.example.org
linkchecker -odot -v www.example.com | dot -Tps > sitemap.ps (создание карты сайта)

Опции запуска можно посмотреть в официальной документации wummel.github.io/linkchecker/man1/linkchecker.1.html
Официальная страница: wummel.github.io/linkchecker/

Денвер — локальный сервер для Web-разработчика

Denwer — локальный сервер для Web-разработчика который содержит Apache, SSL, mod_rewrite, PHP, phpMyAdmin, MySQL, sendmail, Perl и т.д.
Официальный сайт www.denwer.ru

Чтобы создать новый хост, необходимо добавить директорию в каталог /home.

Запуск/остановка/перезапуск денвера выполняется с помощью появившихся ярлыков после установки или файлов C:\WebServers\denwer\Restart.exe, Run.exe, Stop.exe.
Стандартная страница должна открываться из браузера по адресу localhost или 127.0.0.1. Утилиты — http://localhost/tools/.

Авторизация через социальные сети

Добавить возможность авторизации на сайте, в приложении и т.д. через социальные сети можно:

С помощью uLogin:
ulogin.ru

С помощью Loginza:
loginza.ru

Вручную:
dev.twitter.com/anywhere/apps/new
developers.facebook.com/setup/
vk.com/apps.php?act=add&site=1

Как вставить кнопку ВКонтакте

Код в поле разделен на две части, первую часть необходимо вставить внутри тегов head:

Читать далее «Как вставить кнопку ВКонтакте»

Проверка WMID (PHP)

Проверка WMID реализованная на языке веб-программирования PHP.
Автор: © Сергей eLRiz Козлов
Исходный код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    <title>Проверка WMID</title>

</head>

<body>

<?php

    if( isset( $_GET['wmid'] ) AND is_numeric( $_GET['wmid'] ) == TRUE AND strlen( $_GET['wmid'] ) == 12 )

    {

        $url = iconv( 'windows-1251', 'UTF-8', file_get_contents( 'http://passport.webmoney.ru/asp/certcard.asp?id='. $_GET['wmid'] ) );

        preg_match_all( "|</[^>]+>(.*)<[^>]+>|U", $url, $out, PREG_PATTERN_ORDER );

        if( isset( $out[0][4] ) )

            echo 'WMID#: '. $_GET['wmid'] .'<br />'.

                  strip_tags( $out[0][4] ) .'<br />

                  Бизнес-уровень: '. strip_tags( $out[0][8] ) .'<br />

                  Претензий: '. strip_tags( $out[0][10] ) .'<br />

                  <form action="http://arbitrage.webmoney.ru/asp/newclaims.asp" method="get">

                    <input type="submit" value="Оставить отзыв или претензию" />

                    <input type="hidden" name="procwmid" value="'. $_GET['wmid'] .'" />

                  </form>';

        else

            echo '<font color="#FF0000"><b>Ошибка! Такой WM-идентификатор незарегистрирован</b></font><br />';

        echo '<a href="wmid.php">Назад</a>';

    }

    else

        echo '<form action="wmid.php" method="get">

                WMID#: <br />

                <input type="text" name="wmid" maxlength="12" /><br />

                <input type="submit" value="Найти" /><br />

            </form>';

?>

</body>

</html>