das Layout von {writeTopTenRow} verändern

In this board you can talk about general questions about phpMyFAQ

Moderator: Thorsten

Post Reply
itebob
Posts: 59
Joined: Thu May 24, 2007 9:36 am

das Layout von {writeTopTenRow} verändern

Post by itebob »

Wie und wo kann ich das das Layout von Text, der im Blok {writeTopTenRow} generiert wird, verändern? Habe jetzt im Forum rumgestöbert und bin jetzt nur bis zum Template startpage.tpl durchgerungen. Ich möchte nämlich die fette Darstellung der Zeile <X Aufrufe> etwas dämmen.
phpMyFAQ 2.0.0; Apache/1.3.37 (Unix) mod_gzip/1.3.26.1a mod_ssl/2.8.28 OpenSSL/0.9.7e-p1;
PHP Version 5.1.6; Mysql 4.1.22; Webserver Interface CGI
Thorsten
Posts: 15725
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

guck mal in style.css und such da drin nach "topten".

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
itebob
Posts: 59
Joined: Thu May 24, 2007 9:36 am

Post by itebob »

Thorsten wrote:guck mal in style.css und such da drin nach "topten".
So - mit der fetten Schrift habe ich's hinbekommen, aber ich würde gern die Zeile <X Aufrufe> _nach_ , statt _vor_ der Frage platzieren. Wie geht das?
phpMyFAQ 2.0.0; Apache/1.3.37 (Unix) mod_gzip/1.3.26.1a mod_ssl/2.8.28 OpenSSL/0.9.7e-p1;
PHP Version 5.1.6; Mysql 4.1.22; Webserver Interface CGI
Thorsten
Posts: 15725
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

das musst du leider im Code ändern und zwar in der inc/Faq.php in der Funktion getTopTen().

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
itebob
Posts: 59
Joined: Thu May 24, 2007 9:36 am

Vorschlag: die Zeile nach, statt vor der Frage platzieren

Post by itebob »

Hi,
Thorsten wrote:das musst du leider im Code ändern und zwar in der inc/Faq.php in der Funktion getTopTen().
Vorschlag: die Zeile <X Aufrufe> _nach_ , statt _vor_ der Frage standardmäßig zu platzieren - die Frage selbst ist schliesslich wichtiger, als die Anzahl der Aufrufe ;-)
phpMyFAQ 2.0.0; Apache/1.3.37 (Unix) mod_gzip/1.3.26.1a mod_ssl/2.8.28 OpenSSL/0.9.7e-p1;
PHP Version 5.1.6; Mysql 4.1.22; Webserver Interface CGI
itebob
Posts: 59
Joined: Thu May 24, 2007 9:36 am

Post by itebob »

Hi,
habe in der inc/Faq.php in der Funktion getTopTen()
foreach ($result as $row) {
$output .= sprintf('<li><strong>%d %s:</strong><br />',
$row['visits'],
$this->pmf_lang['msgViews']);
$shortTitle = PMF_Utils::makeShorterText(PMF_htmlentities($row['thema'], ENT_QUOTES, $this->pmf_lang['metaCharset']), 8 );
$output .= sprintf('<a href="%s">%s</a></li>',
$row['url'],
$shortTitle);
}
diese grün hervorgehobene Änderungen
foreach ($result as $row) {
$output .= sprintf('<li>',
$this->pmf_lang['msgViews']);
$shortTitle = PMF_Utils::makeShorterText(PMF_htmlentities($row['thema'], ENT_QUOTES, $this->pmf_lang['metaCharset']), 8 );
$output .= sprintf('<a href="%s">%s</a><br />',
$row['url'],
$shortTitle,
$output .= sprintf('<li><strong>%d %s:</strong></li>',
$row['visits']);

}
gemacht, mit dem Ziel, die Zeile <X Aufrufe> _nach_ , statt _vor_ der Frage platzieren. Bin kein PHP-Profi, anscheinend hat sich ein Syntaxfehler eingeschlichen, da nach den Änderungen wird eine leere Seite angezeigt. Was habe ich falsch gemacht?
phpMyFAQ 2.0.0; Apache/1.3.37 (Unix) mod_gzip/1.3.26.1a mod_ssl/2.8.28 OpenSSL/0.9.7e-p1;
PHP Version 5.1.6; Mysql 4.1.22; Webserver Interface CGI
Thorsten
Posts: 15725
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

so muss das aussehen:

Code: Select all

    function getTopTen()
    {
        $result = $this->getTopTenData(PMF_NUMBER_RECORDS_TOPTEN, 0, $this->language);

        if (count($result) > 0) {
            $output = '<ol>';
            foreach ($result as $row) {
                $shortTitle = PMF_Utils::makeShorterText(PMF_htmlentities($row['thema'], ENT_QUOTES, $this->pmf_lang['metaCharset']), 8);

                $output .= sprintf('<li><a href="%s">%s</a>',
                    $row['url'],
                    $shortTitle);

                $output .= sprintf(' (%d %s)</li>',
                    $row['visits'],
                    $this->pmf_lang['msgViews']);
            }
            $output .= '</ol>';
        } else {
            $output = $this->pmf_lang['err_noTopTen'];
        }

        return $output;
    }
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
itebob
Posts: 59
Joined: Thu May 24, 2007 9:36 am

Post by itebob »

Danke, so klappt es!
phpMyFAQ 2.0.0; Apache/1.3.37 (Unix) mod_gzip/1.3.26.1a mod_ssl/2.8.28 OpenSSL/0.9.7e-p1;
PHP Version 5.1.6; Mysql 4.1.22; Webserver Interface CGI
Post Reply