ToDoS1

Рейтинг
2
Регистрация
26.09.2012
dma84:
Вы покажите строчки из ЧПУ, по которым нужно определить, какой скрипт должен отрабатывать

Вот фрагмент кода файла settings.php

$result2 = mysql_query ("SELECT * FROM settings WHERE page='$id'",$db);

Просто берётся значения с поля PAGE и присваивается...

Т.е ссылка обретает вид вместо

view_settings.php?id=1
==> значение Page (которое задаётся произвольно в админке)

htaccess имел такой вид (и всё работало)

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)$ view_settings.php?id=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ view_settings.php?id=$1 [L]

Теперь появилась ещё одна страница (view_serii) - и что теперь добавить с htaccess я не понимаю...

---------- Добавлено 06.12.2012 в 12:51 ----------

ivan-lev:



Тогда серия omega, например, будет открываться по адресу
site.ru/serie/omega/

Получается так...

site.ru/serie/1/

Всё работает, только стили теряются...

Пришлось в фалй добавить ../style.css

А вот с логотипом что делать.... если подправить... то в других местах слезает

ivan-lev:
ToDoS1, а как определить blabla/ это view_settings или view_serii ?

Есть два файла view_settings.php и view_serii.php нужно что бы в них работали ЧПУ...

А вот как сделать правильную запись в htaccess я не знаю...

Отдельно работает

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z0-9]+)/?$ view_serii.php?id=$1 [L]

Но вместе нет


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)$ view_settings.php?id=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ view_settings.php?id=$1 [L]
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-z0-9]+)/?$ view_serii.php?id=$1 [L]
corman:
А тут простая математика. $middle - это центр, $middle_s - верх, $middle_e - низ. $config['news_number'] - количество новостей. Делите, отнимайте и вычитайте как хотите. А если количество новостей везде 10, то можно вообще переменные $middle и $config['news_number'] в выражениях не использовать. Ставьте просто, к примеру - $middle_s = floor(3);

Супер! То что и надо! Спасибо

Digdug:
В /engine/modules/show.short.php необходимо добавить правки. Я делал примерно так
http://yaponomat.com/job/%D1%80%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%B0-%D0%BC%D0%B5%D0%B6%D0%B4%D1%83-%D0%BD%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D1%8F%D0%BC%D0%B8-dle/

Что то мне этот способ не очень понравился...

буду искать дальше

---------- Добавлено 12.10.2012 в 09:55 ----------

corman:
Не знаю как в девятой версии DLE, но когда-то это редактировалось в show.short.php. $middle = floor, $middle_s = floor и $middle_e = floor...

в show.short.php


$middle = floor( $config['news_number'] / 2 );
$middle_s = floor( ($middle - 1) / 2 );
$middle_e = floor( $middle + (($config['news_number'] - $middle) / 2) + 1 );

и что тут можно придумать?

Там только:

Настройки для вывода блока между краткими новостями: (центр, низ, верх)

Хотелось бы задавать жёстко...