Сайт сообщества | Клуб пользователей | О проекте

Имя
Пароль
ПравилаРегистрацияСправка
Сообщения за деньПоиск

Вернуться   Клуб пользователей портальной системы RUNCMS > Опен Ресурс > Разработчикам > Готовые хаки

Ответ
 
Опции темы Опции просмотра
Kostolom вне форума Kostolom
Участник


| Цитировать Старый #1 03-06-2005, 05:34

Я сделал маленькую доработку модуля новостей, что называется, под свои задачи. В последних 5 новостях и самых читаемых новостях при наведении курсора мыши на линк на новость появляется заголовок новости. Пример можете посмотреть на NewMobilePortal.ru ( не сочтите за рекламу). Добавил тег "title". Вот код. 54 строчка файла news_top.php

PHP код:
<a href='".XOOPS_URL."/modules/news/article.php?storyid=".$storyid."' title='".$title."'>".$title."</a>"; 
Теперь вопрос. Как сделать чтобы выводился сам заголовок, а не только 19 символов? Я сам немного запутался


Будь наготове - всюду рыщет стража,
Линия крови путь тебе укажет.
Посетить домашнюю страницу Kostolom
  Сообщения: 253 c 04.12.2004 | Репутация: 3
LaRok вне форума LaRok
攻殻機動隊


| Цитировать Старый #2 03-06-2005, 08:58

Просто в переменной $title которую ты использовал применяется обрузание кода на колличество символов установленное в настройках блока. Поэтому использование переменной $title в html теге title безрезультатно. Выход - введение нового тега $fulltitle без обрезания. Правильный код блока "Популярные новости" (\modules\news\blocks\news_top.php) с выводом полного названия в title дан ниже.

PHP код:
<?php
// $Id: news_top.php,v 1.1 2004/07/11 10:28:40 Farsus Exp $
// -------------------------------------------------------------------------//
//                             RUNCMS                                         //
//                                                                          //
//     reliable - Unique - Nocost &  Simplicity & ease off use                //
//                       < http://www.runcms.org >                          //
// -------------------------------------------------------------------------//
// Original Author: Half-Dead
// Author Website : http://www.e-xoops.com
// License Type   : GPL: See /manual/LICENSES/GPL.txt
// ------------------------------------------------------------------------- //

//---------------------------------------------------------------------------------------//
/**
* Description
*
* @param type $var description
* @return type description
*/
function b_news_top_show($options) {
global 
$db$myts;

$block            = array();
$block['content'] = "<small>";

if (!empty(
$options[4]) && is_numeric($options[4])) {
    
$extra "AND topicid=".$options[4];
}

$sql "
    SELECT storyid, title, published, counter
    FROM "
.$db->prefix("stories")."
    WHERE published<"
.time()."
    AND published>0
    
$extra
    ORDER BY "
.$options[0]." DESC";

if ( empty(
$options[3]) || !is_numeric($options[3]) ) {
    
$options[3] = 5;
    }

if ( empty(
$options[2]) || !is_numeric($options[2]) ) {
    
$options[2] = 19;
    }

$result $db->query($sql$options[3], 0);
while ( list(
$storyid$title$published$counter) = $db->fetch_row($result) ) {
    
$title $myts->makeTboxData4Show($title);
    
$titlefull $myts->makeTboxData4Show($title);
    if ( 
strlen($title) > $options[2] ) {
        
$title substr($title0$options[2])."..";
        }

    
$block['content'] .= "
            &nbsp;<strong><big>&middot;</big></strong>
            <a href='"
.XOOPS_URL."/modules/news/article.php?storyid=".$storyid."' title='".$titlefull."'>".$title."</a>";

    if (
$options[0] == "published") {
        
$block['title'] = _MB_NEWS_TITLE4;
        if (
$options[1] == 1) {
            
$block['content'] .= " (".formatTimestamp($published"s").")";
            }
        
$block['content'] .= "<br />";

        } elseif (
$options[0] == "counter") {
            
$block['title'] = _MB_NEWS_TITLE5;
            if (
$options[1] == 1) {
                
$block['content'] .= " (".$counter.")";
                }
            
$block['content'] .= "<br />";
        }
    }
$block['content'] .= "</small>";

return 
$block;
}

//---------------------------------------------------------------------------------------//
/**
* Description
*
* @param type $var description
* @return type description
*/
function b_news_top_edit($options) {
global 
$db;

$form   "<input type='hidden' name='options[0]' value='".$options[0]."' />";
$form  .= "<table border='0'>";

// Show Date/Hits?
$form .= "<tr><td>"._MB_NEWS_SHOW." ".$options[0].":</td><td>";

$chk   "";
if (
$options[1] == 0) {
    
$chk " checked='checked'";
    }
$form .= "<input type='radio' class='radio' name='options[1]' value='0'".$chk." />"._NO."";

$chk   "";
if (
$options[1] == 1) {
    
$chk " checked='checked'";
    }
$form .= "<input type='radio' class='radio' name='options[1]' value='1'".$chk." />"._YES."</td></tr>";


// TRIM
$form .= "
<tr><td>"
._MB_NEWS_TRIM."</td>
<td><input type='text' class='text' size='3' maxlength='2' name='options[2]' value='"
.$options[2]."'></td>
</tr>"
;


// LIMIT TO
$form .= "
<tr><td>"
._MB_NEWS_LIMIT."</td>
<td><input type='text' class='text' name='options[3]' value='"
.$options[3]."' size='3' maxlength='2' /></td>
</tr>"
;

// LIMIT TO CATS
include_once(XOOPS_ROOT_PATH."/class/xoopstree.php");
$cats = new XoopsTree($db->prefix("topics"), "topic_id""topic_pid");
ob_start();
$cats->makeMySelBox("topic_title""topic_title"$options[4], 1"options[4]");
$content ob_get_contents();
ob_end_clean();

$form .= "
<tr><td>"
._MB_NEWS_LIMIT."</td>
<td>
$content</td>
</tr>"
;

$form .= "</table>";

return 
$form;
}
?>
Снёс к разработчикам.

Посетить домашнюю страницу LaRok
  Сообщения: 2,045 c 13.09.2003 | Репутация: 25
Kostolom вне форума Kostolom
Участник


| Цитировать Старый #3 03-06-2005, 12:31

О, спасибо. А ничего, что у меня E-xoops 1.05 Rev3. Будет нормально работать?


Будь наготове - всюду рыщет стража,
Линия крови путь тебе укажет.
Посетить домашнюю страницу Kostolom
  Сообщения: 253 c 04.12.2004 | Репутация: 3
LaRok вне форума LaRok
攻殻機動隊


| Цитировать Старый #4 03-06-2005, 18:45

Скорее всего да. Сохрани копию старого файла перед использованием и попробуй.

Посетить домашнюю страницу LaRok
  Сообщения: 2,045 c 13.09.2003 | Репутация: 25
Kostolom вне форума Kostolom
Участник


| Цитировать Старый #5 03-06-2005, 22:43

LaRok*Все работает. Большое спасибо.


Будь наготове - всюду рыщет стража,
Линия крови путь тебе укажет.
Посетить домашнюю страницу Kostolom
  Сообщения: 253 c 04.12.2004 | Репутация: 3
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Рейтинг@Mail.ru Хостинг провайдер Majordomo. Powered by: vBulletin Version 3.0
Copyright ©2000-2024, Jelsoft Enterprises Ltd.
Все разделы прочитаны - Руководство форума - Архив - Вверх
Rambler's Top100
Output: 77.93 Kb. compressed to 73.94 Kb. by saving 3.99 Kb. (5.12%)
Page generated in 0.10846 seconds with 12 queries