03.03.2010, 20:27 | #1 |
Эксперт
Регистрация: 03.07.2007
Адрес: Chinatown
Сообщений: 7,265
Вес репутации: 618
|
PHP-Fusion: установка кода статей и изготовление шаблона
Установка кода статей Sape на PHP-Fusion
1. создать sapearticle_panel в директории infusions, туда кидается файл sapearticle_panel.php с содержанием : Код HTML:
<?
if (!defined("IN_FUSION")) { header("Location:../../index.php"); exit; }
openside("Статьи от корефанов");
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'хэш-код');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape_article = new SAPE_articles();
echo $sape_article->return_announcements();
closeside();
?>
3. в админке размещаем для отображения в нужном месте и включаем панельку. 4. добавляем в сапу. Создание динамического шаблона: 1. открываем в текстовом редакторе файл subheader.php находим Код HTML:
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
Код HTML:
echo "<!--a1--><!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"> Код HTML:
<head>
Код HTML:
<head><!--a1--> Код HTML:
<title>".$title.$settings['sitename']."</title> <meta name='description' content='".$title.$settings['description']."'> <meta name='keywords' content='".$title.$settings['keywords']."'> Код HTML:
<!--a3-->
Код HTML:
?> Код HTML:
echo "<!--a4-->";
?>
Код HTML:
echo "</td>\n";
Код HTML:
echo "<!--a5--></td>\n"; заменяем строку Код HTML:
echo "</body>\n</html>\n"; Код HTML:
echo "</body>\n</html><!--a6-->\n"; Код HTML:
<? $GrabURL = 'http://мой_сайт.ru/index.php?id=123'; //укажите URL любой страницы сайта с какой-нибудь статьей $RetrieveFile = implode("",file($GrabURL)); $GrabStart = '<!--a1-->'; $GrabEnd = '<!--a2-->'; preg_match("%$GrabStart(.*?)$GrabEnd%is", $RetrieveFile, $m); echo $m[1]; ?> <title>{title}</title> <meta name="keywords" content="{keywords}" /> <meta name="description" content="{description}" /> <? $GrabStart = '<!--a3-->'; $GrabEnd = '<!--a4-->'; preg_match("%$GrabStart(.*?)$GrabEnd%is", $RetrieveFile, $m); echo $m[1]; ?> <h1>{header}</h1> {body} <? $GrabStart = '<!--a5-->'; $GrabEnd = '<!--a6-->'; preg_match("%$GrabStart(.*?)$GrabEnd%is", $RetrieveFile, $m); echo $m[1]; ?> 3. В интерфейсе добавления шаблона добавляем этот шаблон, прописывая его данные: название шаблона: sapeart URL: http://мой_сайт.ru/sapeart.php частота обновления: 30 минут 4. В интерфейсе "Настройка шаблонов URL'ов" добавляем шаблон /view-content/{id}.html view-content - можно заменить на любое другое слово, похожее на какое-либо слово, содержащееся в URLах на сайте, либо по формату даты, как написано в интерфейсе "Настройка шаблонов URL'ов".
__________________
тексты по 10 руб/кзнак автоматизируй все, не мучайся! |
17.03.2010, 14:25 | #4 |
Эксперт
Регистрация: 03.07.2007
Адрес: Chinatown
Сообщений: 7,265
Вес репутации: 618
|
ruslant, не юзал 7 версию php-fusion, но подозреваю, что там все так же, как и в 6...
опишите проблему, с которой столкнулись, конкретнее, плиз...
__________________
тексты по 10 руб/кзнак автоматизируй все, не мучайся! |
18.03.2010, 08:39 | #5 |
Новичок
Регистрация: 17.03.2010
Сообщений: 2
Вес репутации: 0
|
Дело в том, что там нет side_right.php и side_left.php, в место этого есть один конфиг. файл panels.php, ниже привожу исходник:
Код:
<?php /*-------------------------------------------------------+ | PHP-Fusion Content Management System | Copyright (C) 2002 - 2008 Nick Jones | http://www.php-fusion.co.uk/ +--------------------------------------------------------+ | Filename: panels.php | Author: Nick Jones (Digitanium) +--------------------------------------------------------+ | This program is released as free software under the | Affero GPL license. You can redistribute it and/or | modify it under the terms of this license which you | can read by viewing the included agpl.txt or online | at www.gnu.org/licenses/agpl.html. Removal of this | copyright header is strictly prohibited without | written permission from the original author(s). +--------------------------------------------------------*/ if (!defined("IN_FUSION")) { header("Location: ../../index.php"); exit; } // Calculate current true url $script_url = explode("/", $_SERVER['PHP_SELF'].(FUSION_QUERY ? "?".FUSION_QUERY : "")); $url_count = count($script_url); $base_url_count = substr_count(BASEDIR, "/") + 1; $start_page = ""; while ($base_url_count != 0) { $current = $url_count - $base_url_count; $start_page .= "/".$script_url[$current]; $base_url_count--; } define("START_PAGE", substr(preg_replace("#(&|\?)(s_action=edit&shout_id=)([0-9]+)#s", "", $start_page), 1)); // Side & center panels ob_start(); $plc = 0; // Render left panels if(!defined("ADMIN_PANEL")){ if (check_panel_status("left")) { $p_res = dbquery("SELECT * FROM ".DB_PANELS." WHERE panel_side='1' AND panel_status='1' ORDER BY panel_order"); if (dbrows($p_res)) { while ($p_data = dbarray($p_res)) { if (checkgroup($p_data['panel_access'])) { if ($p_data['panel_type'] == "file") { $panel_name = $p_data['panel_filename']; include INFUSIONS.$panel_name."/".$panel_name.".php"; } else { eval(stripslashes($p_data['panel_content'])); } $plc++; } } } } }else{ require_once ADMIN."navigation.php"; } define("LEFT", ob_get_contents()); ob_end_clean(); // Render right panels $prc = 0; ob_start(); if(!defined("ADMIN_PANEL")){ if (check_panel_status("right")) { $p_res = dbquery("SELECT * FROM ".DB_PANELS." WHERE panel_side='4' AND panel_status='1' ORDER BY panel_order"); if (dbrows($p_res)) { while ($p_data = dbarray($p_res)) { if (checkgroup($p_data['panel_access'])) { if ($p_data['panel_type'] == "file") { $panel_name = $p_data['panel_filename']; include INFUSIONS.$panel_name."/".$panel_name.".php"; } else { eval(stripslashes($p_data['panel_content'])); } $prc++; } } } } } define("RIGHT", ob_get_contents()); ob_end_clean(); // Set the require div-width class if(defined("ADMIN_PANEL")){ $main_style = "side-left"; }elseif ($plc && $prc) { $main_style = "side-both"; } elseif ($plc && !$prc) { $main_style = "side-left"; } elseif (!$plc && $prc) { $main_style = "side-right"; } elseif (!$plc && !$prc) { $main_style = ""; } // Render upper center panels ob_start(); if(!defined("ADMIN_PANEL")){ echo "<a id='content' name='content'></a>\n"; if (iADMIN && $settings['maintenance']) { echo "<div class='admin-message'>".$locale['global_190']."</div>"; } if (iSUPERADMIN && file_exists(BASEDIR."setup.php")) { echo "<div class='admin-message'>".$locale['global_198']."</div>"; } if (iADMIN && !$userdata['user_admin_password']) { echo "<div class='admin-message'>".$locale['global_199']."</div>"; } if (check_panel_status("upper")) { $p_res = dbquery("SELECT * FROM ".DB_PANELS." WHERE panel_side='2' AND panel_status='1' ORDER BY panel_order"); if (dbrows($p_res)) { while ($p_data = dbarray($p_res)) { if (checkgroup($p_data['panel_access'])) { if ($p_data['panel_display'] == 1 || $settings['opening_page'] == START_PAGE) { if ($p_data['panel_type'] == "file") { $panel_name = $p_data['panel_filename']; include INFUSIONS.$panel_name."/".$panel_name.".php"; } else { eval(stripslashes($p_data['panel_content'])); } } } } } } } define("U_CENTER", ob_get_contents()); ob_end_clean(); // Render lower center panels ob_start(); if(!defined("ADMIN_PANEL")){ if (check_panel_status("lower")) { $p_res = dbquery("SELECT * FROM ".DB_PANELS." WHERE panel_side='3' AND panel_status='1' ORDER BY panel_order"); if (dbrows($p_res) != 0) { while ($p_data = dbarray($p_res)) { if (checkgroup($p_data['panel_access'])) { if ($p_data['panel_display'] == 1 || $settings['opening_page'] == START_PAGE) { if ($p_data['panel_type'] == "file") { $panel_name = $p_data['panel_filename']; include INFUSIONS.$panel_name."/".$panel_name.".php"; } else { eval(stripslashes($p_data['panel_content'])); } } } } } } } define("L_CENTER", ob_get_contents()); ob_end_clean(); ?> |
05.08.2010, 13:23 | #6 |
Новичок
Регистрация: 12.01.2010
Адрес: Россия
Сообщений: 14
Вес репутации: 0
|
PHP Fusion установка кода статей и изготовление шаблона
Сделал такой файл:
<html> <head> <?php require_once sl_articles.php; art = new SLArticlesClient; art->print_header; ?> </head> <body> <?php art->print_body; ?> </body> </html> при его открытии выводится только "<html><head>". А в настройках пишет "Каталог статей по указанному адресу не найден"? |
06.08.2010, 18:56 | #7 |
Новичок
Регистрация: 12.01.2010
Адрес: Россия
Сообщений: 14
Вес репутации: 0
|
PHP Fusion установка кода статей и изготовление шаблона
Описую подробно как в обычноам html все установить
Создаем пустую страницу в html, и называем например - articles После открываем ее через обычный блокнот, вставляем Внутри тега <head></head> <?php require_once _SERVERDOCUMENT_ROOT./sl_articles/sl_articles.php; art = new SLArticlesClient; art->print_header; ?> А внутрь тега <body></body> вставить код php: <?php art->print_body; ?> И сохраняем. После нобходимо изменить его с html на php это делаем через тот же блокнот или через тотал командер после чего загружаем на сервер и все работает |
08.08.2010, 16:11 | #8 | |||||||
Новичок
Регистрация: 11.08.2008
Сообщений: 98
Вес репутации: 202
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Прошу не советовать мне делать html-шаблон или вносить изменения в файлы cms - это неправильный подход. Добавлено через 21 минуту Опечатка. Редактировать тот пост уже не получается. В строке opentable("Заголовок статьи") конечно же, в конце точка с запятой должна стоять. Может быть, стоит вместо маркеров давать обычные переменные для php-шаблонов? Почему так не делают? Добавлено через 2 часа 25 минут Извините, кажется заработал такой вариант: Цитата:
Последний раз редактировалось Alipapa; 08.08.2010 в 16:11. Причина: Добавлено сообщение |
|||||||
11.08.2010, 21:05 | #9 | |
Новичок
Регистрация: 11.08.2008
Сообщений: 98
Вес репутации: 202
|
Наконец-то у меня начали размещать статьи и я убедился в правильности моего шаблона для PHP-Fusion 7. Окончательный вариант следующий:
Цитата:
Небольшой совет по шаблонам URL-ов. Не делайте в них имитацию подкаталогов, т.е. вместо шаблона, к примеру, /review/{id}, делайте /review-{id}. Иначе у вас будут проблемы со стилями и внутренними ссылками. Подобный шаблон можно создать и для 6-й версии. Но так как все нормальные пацаны давно перешли на семерку, то не будем заморачиваться, пусть пользуются методом от MonAmur. Мой предыдущий пост прошу удалить, чтобы не отвлекал и не сбивал с толку. |
|
09.11.2010, 20:35 | #10 | |
Специалист
Регистрация: 03.11.2010
Адрес: Делаю сайты на PHP-Fusion
Сообщений: 173
Вес репутации: 0
|
Цитата:
|
|
Опции темы | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
InstantCMS: установка кода статей и изготовление шаблона | MonAmur | Биржа статей | 8 | 10.02.2018 06:46 |
Установка кода на PHP-Fusion | Lythium | Установка кода на различные движки | 251 | 02.01.2016 12:25 |
Установка кода статей на vbulletin | Konstantin_by | Установка кода на различные движки | 9 | 05.05.2011 18:23 |
Установка кода статей на Друпал | ubuntu | Установка кода на различные движки | 13 | 02.04.2010 00:43 |
Установка кода на php-fusion (версия для печати) | alex001107 | Установка кода на различные движки | 2 | 30.08.2009 15:49 |
Часовой пояс GMT +3, время: 09:45.