IPB

Здравствуйте, гость ( Вход | Регистрация )

6 страниц V  < 1 2 3 4 > »   
Ответить в данную темуНачать новую тему
> Модуль Blog, Модуль блога
Dennion
сообщение 7.11.2011, 11:47
Сообщение #21


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



Код
function blog_hook($obj,$row) {

    $obj->set('blogId',$row['seo_name1'],true);
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 11:52
Сообщение #22


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Не помогло sad.gif

http://galka.in
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 12:17
Сообщение #23


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



В итоге нормальные ссылки или у Блога или у новостей sad.gif
Перейти в начало страницы
 
+Цитировать сообщение
Dennion
сообщение 7.11.2011, 12:22
Сообщение #24


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



оба хука покажи если они делают одно и тоже то сработает один.
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 12:23
Сообщение #25


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Код
function news_hook($obj,$row) {

    $obj->set('newsId',$row['seo_name']);

}
function blog_hook($obj,$row) {

    $obj->set('blogId',$row['seo_name1'],true);
Перейти в начало страницы
 
+Цитировать сообщение
Dennion
сообщение 7.11.2011, 12:35
Сообщение #26


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



Цитата(korvin @ 7.11.2011, 13:23) *
Код
function news_hook($obj,$row) {

    $obj->set('newsId',$row['seo_name']);

}
function blog_hook($obj,$row) {

    $obj->set('blogId',$row['seo_name1'],true);


у тебя создадутся 2 переменные @newsId@ и @blogId@
как ты их прописываешь в шаблоне я не знаю, ну тоесть как @newsId@ я пониаю, а как @blogId@ нет.
Чтобы убедиться что два хука отрабатывают вставь в них echo __FUNCTION__; должны вывестись сверху 2 имени функции. Хуки выполняются поочередно.
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 12:38
Сообщение #27


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



в шаблоне есть @miniNews@ и @miniBlog@.. Ща посмотрю что с BlogID
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 12:47
Сообщение #28


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



blogID есть такая

А выводит у меня вот так..
Код
news_hooknews_hooknews_hooknews_hooknews_hooknews_hook
Перейти в начало страницы
 
+Цитировать сообщение
Dennion
сообщение 7.11.2011, 13:00
Сообщение #29


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



Цитата(korvin @ 7.11.2011, 12:47) *
blogID есть такая

А выводит у меня вот так..
Код
news_hooknews_hooknews_hooknews_hooknews_hooknews_hook


А если убрать news_hook что выводит?
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 13:05
Сообщение #30


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Код
blog_hookblog_hookblog_hookblog_hookblog_hookblog_hook


Вот смотри..
Код
$addHandler=array(
        'topMenu'=>'topmenu_hook',
        'podcatalog'=>'podcatalog_hook',
        'page'=>'page_hook',
         'index'=>'blog_hook',
        'index'=>'news_hook',
        'add_blog'=>'add_blog_hook',
        'add_news'=>'add_news_hook'
);

При таком раскладе - нормальные ссылки у новостей.. Т.е. отрабатывается последний 'index'=>'news_hook',
Если же поменять местами с 'index'=>'blog_hook', - нормальные ссылки будут у блога..
Перейти в начало страницы
 
+Цитировать сообщение
Dennion
сообщение 7.11.2011, 13:11
Сообщение #31


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



Цитата(korvin @ 7.11.2011, 14:05) *
Код
blog_hookblog_hookblog_hookblog_hookblog_hookblog_hook


Вот смотри..
Код
$addHandler=array(
        'topMenu'=>'topmenu_hook',
        'podcatalog'=>'podcatalog_hook',
        'page'=>'page_hook',
         'index'=>'blog_hook',
        'index'=>'news_hook',
        'add_blog'=>'add_blog_hook',
        'add_news'=>'add_news_hook'
);

При таком раскладе - нормальные ссылки у новостей.. Т.е. отрабатывается последний 'index'=>'news_hook',
Если же поменять местами с 'index'=>'blog_hook', - нормальные ссылки будут у блога..


В одном модуле один перехват, это же массив и у него должны быть уникальные ключи, ты тогда все объедини в одну функцию, зачем ее делить на 2 то.
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 7.11.2011, 13:14
Сообщение #32


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Поклон тебе в ноги! Заработало smile.gif) ВСё.. Осталось подписку доделать на блог и можно резать в модуль smile.gif)

Только
Код
$obj->set('blogId',$row['seo_name1'],false);

false ставить надо, а то он в урле к seoname1 добавляет в начале id т.е. ID_23seoname.html
Перейти в начало страницы
 
+Цитировать сообщение
Worm
сообщение 30.12.2012, 13:12
Сообщение #33


Активный участник
***

Группа: Модератор
Сообщений: 2675
Регистрация: 30.12.2009
Из: Самара
Пользователь №: 213
Версия CMS Free: 34
Создано сайтов: Достаточно много



korvin а модуль не сохранился у тебя? А то смотрю ты на WP першел. Мне бы очень не помешал бы модуль блога, если уже готов, то поделись плиз @angelochek@
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 6.1.2013, 23:44
Сообщение #34


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Я его в модуль не выгонял.. Надо заняться.. Исходники старого сайта сохранены.. Перешел на WP т.к. там много чего реализовано именно под блоги + с мобильника пишу туда когда в горах.
Перейти в начало страницы
 
+Цитировать сообщение
Worm
сообщение 7.1.2013, 15:34
Сообщение #35


Активный участник
***

Группа: Модератор
Сообщений: 2675
Регистрация: 30.12.2009
Из: Самара
Пользователь №: 213
Версия CMS Free: 34
Создано сайтов: Достаточно много



А можешь кинуть исходник? именно тех файлов под блог


Эх..да, пхпшоп еще не WP (= я кстати начинал делать под мобильник интерфейс. Но не доделал. Вот тема
Там всё кликабельно, тока скрипты бы надо подключить все
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 8.1.2013, 21:10
Сообщение #36


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Завтра выковыряю - скину. Но там староватая версия самого пхпшопа...
Но куски повырывать можно..
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 10.1.2013, 19:27
Сообщение #37


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Создаем блог на сайте

Выполните запрос в базу данных.

Код
CREATE TABLE IF NOT EXISTS `phpshop_blog` (
  `id` int(64) NOT NULL AUTO_INCREMENT,
  `date` varchar(32) NOT NULL,
  `title` text NOT NULL,
  `description` text NOT NULL,
  `content` text NOT NULL,
  PRIMARY KEY (`id`),
  KEY `id` (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=cp1251;


ФАйл /phpshop/inc/config.ini
В секцию [base] в самом конце добавьте
Код
table_name26="phpshop_blog";


ФАйл /phpshop/inc/elemets.inc.php

Перед:
Код
/**
     * Вывод последних новостей
     * @return string
     */

Добавляем
Код
/**
* Элемент последние записи блога
* @author PHPShop Software
* @version 1.0
* @package PHPShopElements
*/
class PHPShopBlogElement extends PHPShopElements {
    /**
     * @var bool  показывать только на главной
     */
    var $disp_only_index=false;
    /**
     * @var Int Кол-во записей
     */
    var $limit=3;

    /**
     * Конструктор
     */
    function PHPShopBlogElement() {

        // Отладка
        $this->debug=false;

        // Имя Бд
        $this->objBase=$GLOBALS['SysValue']['base']['table_name26'];
        parent::PHPShopElements();
    }

    /**
     * Вывод последних записей блога
     * @return string
     */
    function index() {
        global $PHPShopModules;
        $dis='';

        // Выполнение только на главной странице
        if($this->disp_only_index) {
            if($this->PHPShopNav->index()) $view=true;
            else $view=false;
        }
        else $view=true;

        if($view) {
            $data = $this->PHPShopOrm->select(array('*'),false,array('order'=>'id DESC'),array("limit"=>$this->limit));
            if(is_array($data))
                foreach($data as $row) {

                    // Определяем переменые
                    $this->set('blogId',$row['id']);
                    $this->set('blogZag',$row['title']);
                    $this->set('blogData',$row['date']);
                    $this->set('blogKratko',$row['description']);
                
                 if(!empty($row['content'])){
                $this->set('blogComStart','');
                $this->set('blogComEnd','');
                }
                else {
                       $this->set('blogComStart','<!--');
                       $this->set('blogComEnd','-->');
                         }
                    // Перехват модуля
                    $PHPShopModules->setHookHandler(__CLASS__,__FUNCTION__, $this, $row);

                    // Подключаем шаблон
                    $dis.=$this->parseTemplate($this->getValue('templates.blog_main_mini'));
                }
            return $dis;
        }
    }
}


Файл /phpshop/inc/autoload.inc.php
После
Код
// Мини-новости
$PHPShopNewsElement = &new PHPShopNewsElement();
$PHPShopNewsElement->init('miniNews');


Добавляем
Код
// Мини-blog
$PHPShopBlogElement = &new PHPShopBlogElement();
$PHPShopBlogElement->init('miniBlog');


Файл /phpshop/admpanel/admin.php

После
Код
$PHPShopIcon->setIcon("icon/page_lightning.gif","Новости","window.location.replace('?p=news')").

Добавить
Код
$PHPShopIcon->setIcon("icon/blog.png","Блог","window.location.replace('?p=blog')").


Распаковываем аттач. Папку blog из папки templates кидаем в свой дизайн.

Для тех кто пользуется модулем seourl качаем модифицированный модуль отдельно и переустанавливаем его.

Если всплывут косяки - пишите сюда, будем исправлять по ходу.. Мог что то пропустить, т.к. делал Блоги давно и сейчас просто выковыривал..

З.Ы. Ну и дизайн под себя подправьте smile.gif)

Прикрепленные файлы
Прикрепленный файл  Blog.zip ( 13,66 килобайт ) Кол-во скачиваний: 274
Прикрепленный файл  modules.zip ( 23,01 килобайт ) Кол-во скачиваний: 306
 
Перейти в начало страницы
 
+Цитировать сообщение
Dennion
сообщение 11.1.2013, 11:09
Сообщение #38


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



Супер, молодца.
Перейти в начало страницы
 
+Цитировать сообщение
korvin
сообщение 11.1.2013, 15:24
Сообщение #39


Активный участник
***

Группа: Пользователи
Сообщений: 378
Регистрация: 1.12.2010
Из: Odessa
Пользователь №: 694
Версия CMS Free: 34002
Создано сайтов: 4



Ден.. Собери в отдельный модуль плиз smile.gif
Перейти в начало страницы
 
+Цитировать сообщение
Dennion
сообщение 13.1.2013, 13:02
Сообщение #40


Администратор
***

Группа: Главные администраторы
Сообщений: 5910
Регистрация: 20.8.2009
Из: Москва
Пользователь №: 1
Версия CMS Free: 3.3



Лады, а кто проверил работает все?
Перейти в начало страницы
 
+Цитировать сообщение

6 страниц V  < 1 2 3 4 > » 
Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 23.9.2019, 16:25