Не нравятся результаты поиска? Попробуйте другой поиск!

Алфавит


     04.02.2014    Все вопросы » Общие вопросы по PHP    4621

вопрос
У меня 10.1 и в /engine/engine.php присутствует вывод по буквенному идентификатору а как её установить в шаблон сайта?

        } elseif ($catalog != "") {
            // ################ Вывод по буквенному идентификатору #################
            if ($cstart) {
                $cstart = $cstart - 1;
                $cstart = $cstart * $config['news_number'];
            }

            $newsmodule = true;
            
            $url_page = $config['http_home_url'] . "catalog/" . urlencode ( $catalog );
            $user_query = "catalog=" . urlencode ( $catalog );
            
            $news_sort_by = ($config['catalog_sort']) ? $config['catalog_sort'] : "date";
            $news_direction_by = ($config['catalog_msort']) ? $config['catalog_msort'] : "DESC";
            
            if (isset ( $_SESSION['dle_sort_catalog'] )) $news_sort_by = $_SESSION['dle_sort_catalog'];
            if (isset ( $_SESSION['dle_direction_catalog'] )) $news_direction_by = $_SESSION['dle_direction_catalog'];
            
            $sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}symbol = '$catalog' AND approve=1" . $where_date . " ORDER BY " . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
            $sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE {$stop_list}symbol = '$catalog' AND approve=1" . $where_date;

        } else {

8 комментариев

vitnet
PHP-developer

vitnet - 5 февраля 2014 09:33 -

<a href="http://site.ru/catalog/A/">A</a> и.т.д.;)

fh79655l123
Юзер

fh79655l123 - 5 февраля 2014 10:27 -

Пробовал... выдает ошибку

fh79655l123
Юзер

fh79655l123 - 5 февраля 2014 10:31 -

Все понял ссылка
http://site.ru/catalog/A/
работает только на новые добавленные новости после включение в админ-панели "Автоматическое формирование буквенного каталога публикаций"

sergio.lamborghini
Юзер

sergio.lamborghini - 5 февраля 2014 15:57 -

Нужно вывести в шаблон алфавитный каталог?

rocksmart
Юзер

rocksmart - 5 февраля 2014 19:50 -

Модуль Вывод буквенных и числовых идентификаторов

<?php
/*
=====================================================
Автор: rocksmart
-----------------------------------------------------
http://pro-script.ru/
-----------------------------------------------------
Данный код защищен авторскими правами
=====================================================
Файл: catalog.php
-----------------------------------------------------
Назначение: Вывод буквенных и числовых идентификаторов
=====================================================
*/

if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}



foreach(range("А", "Я") as $rus) {$cont .= " <a href=\"".$config['http_home_url']."catalog/".urlencode($rus)."\" title=\"$rus\">$rus</a>";}
$cont .= "<br />";

foreach(range("A", "Z") as $eng)$cont .= " <a href=\"".$config['http_home_url']."catalog/".$eng."\" title=\"$eng\">$eng</a>";    
$cont .= "<br />";
foreach (range(1, 9) as $number) $cont .= " <a href=\"".$config['http_home_url']."catalog/".$number."\" title=\"$number\">$number</a>";

$cont .= "<br />";

echo $cont;





?>


В шаблоне


{include file="engine/modules/catalog.php"}    


Для версии windows-1251

fh79655l123
Юзер

fh79655l123 - 6 февраля 2014 19:00 -

Спасибо за модуль все работает ну там есть лишние буквы например Ь и Ъ потому что врядли что-то на них будет начитаться и нужно еще приделать стиль для алфавита а обычный пользователь не сможет

fh79655l123
Юзер

fh79655l123 - 6 февраля 2014 19:12 -

Еще заметил что цифры 0 нету =)

sergio.lamborghini
Юзер

sergio.lamborghini - 6 февраля 2014 20:57 -

Есть другая реализация.
В CSS:
/*---alfavit---*/
#alfavit {margin:0 0 0 14px; height:61px;}
.alfavit_btn {width:28px; height:29px;float:left; line-height:25px;font-weight:bold; background:url('Путь к картинке') no-repeat;}
.alfavit_btn a {width:28px; height:29px; display:block; color:#fff; text-decoration:none; text-shadow:1px 1px 0px rgba(24, 69, 81, 1.0); text-align:center; background:url('Путь к картинке') no-repeat 0 0;}
.alfavit_btn a:hover {background-position:0 -29px;}
.alfavit_btn_num {width:54px;height:29px; float:left; margin-right:2px; line-height:25px; font-weight:bold; background:url('Путь к картинке') no-repeat;}
.alfavit_btn_num a {width:54px; height:29px; display:block; color:#fff; text-decoration:none; text-shadow:1px 1px 0px rgba(24, 69, 81, 1.0); text-align:center; background:url('Путь к картинке') no-repeat;}
.alfavit_btn_num a:hover {background-position:0 -29px;}
.alfavit_rus {display:block; margin-left:-1px;}
.alfavit_eng {display:block;margin-top:33px;}

В alphabet.tpl
<div class="alfavit_rus">
<div class="alfavit_btn"><a href="/cat/%C0">А</a></div>
<div class="alfavit_btn"><a href="/cat/%C1">Б</a></div>
<div class="alfavit_btn"><a href="/cat/%C2">В</a></div>
<div class="alfavit_btn"><a href="/cat/%C3">Г</a></div>
<div class="alfavit_btn"><a href="/cat/%C4">Д</a></div>
<div class="alfavit_btn"><a href="/cat/%C5">Е</a></div>
<div class="alfavit_btn"><a href="/cat/%C6">Ж</a></div>
<div class="alfavit_btn"><a href="/cat/%C7">З</a></div>
<div class="alfavit_btn"><a href="/cat/%C8">И</a></div>
<div class="alfavit_btn"><a href="/cat/%CA">К</a></div>
<div class="alfavit_btn"><a href="/cat/%CB">Л</a></div>
<div class="alfavit_btn"><a href="/cat/%CC">М</a></div>
<div class="alfavit_btn"><a href="/cat/%CD">Н</a></div>
<div class="alfavit_btn"><a href="/cat/%CE">О</a></div>
<div class="alfavit_btn"><a href="/cat/%CF">П</a></div>
<div class="alfavit_btn"><a href="/cat/%D0">Р</a></div>
<div class="alfavit_btn"><a href="/cat/%D1">С</a></div>
<div class="alfavit_btn"><a href="/cat/%D2">Т</a></div>
<div class="alfavit_btn"><a href="/cat/%D3">У</a></div>
<div class="alfavit_btn"><a href="/cat/%D4">Ф</a></div>
<div class="alfavit_btn"><a href="/cat/%D5">Х</a></div>
<div class="alfavit_btn"><a href="/cat/%D6">Ц</a></div>
<div class="alfavit_btn"><a href="/cat/%D7">Ч</a></div>
<div class="alfavit_btn"><a href="/cat/%D8">Ш</a></div>
<div class="alfavit_btn"><a href="/cat/%D9">Щ</a></div>
<div class="alfavit_btn"><a href="/cat/%DD">Э</a></div>
<div class="alfavit_btn"><a href="/cat/%DE">Ю</a></div>
<div class="alfavit_btn"><a href="/cat/%DF">Я</a></div>
</div>
<div class="alfavit_eng">
<div class="alfavit_btn"><a href="/cat/a">A</a></div>
<div class="alfavit_btn"><a href="/cat/b">B</a></div>
<div class="alfavit_btn"><a href="/cat/c">C</a></div>
<div class="alfavit_btn"><a href="/cat/d">D</a></div>
<div class="alfavit_btn"><a href="/cat/e">E</a></div>
<div class="alfavit_btn"><a href="/cat/f">F</a></div>
<div class="alfavit_btn"><a href="/cat/g">G</a></div>
<div class="alfavit_btn"><a href="/cat/h">H</a></div>
<div class="alfavit_btn"><a href="/cat/i">I</a></div>
<div class="alfavit_btn"><a href="/cat/j">J</a></div>
<div class="alfavit_btn"><a href="/cat/k">K</a></div>
<div class="alfavit_btn"><a href="/cat/l">L</a></div>
<div class="alfavit_btn"><a href="/cat/m">M</a></div>
<div class="alfavit_btn"><a href="/cat/n">N</a></div>
<div class="alfavit_btn"><a href="/cat/o">O</a></div>
<div class="alfavit_btn"><a href="/cat/p">P</a></div>
<div class="alfavit_btn"><a href="/cat/q">Q</a></div>
<div class="alfavit_btn"><a href="/cat/r">R</a></div>
<div class="alfavit_btn"><a href="/cat/s">S</a></div>
<div class="alfavit_btn"><a href="/cat/t">T</a></div>
<div class="alfavit_btn"><a href="/cat/u">U</a></div>
<div class="alfavit_btn"><a href="/cat/v">V</a></div>
<div class="alfavit_btn"><a href="/cat/w">W</a></div>
<div class="alfavit_btn"><a href="/cat/x">X</a></div>
<div class="alfavit_btn"><a href="/cat/y">Y</a></div>
<div class="alfavit_btn"><a href="/cat/z">Z</a></div>
<div class="alfavit_btn_num"><a href="/cat/1">0 - 9</a></div>
</div>

Вывод в нужном месте через инклюд
{include file="alphabet.tpl"}

Картинки нарисуй в фотожопе 28х58 и 54х58

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх