include internal links - reihenfolge ändern?

In this board you can talk about general questions about phpMyFAQ

Moderator: Thorsten

Post Reply
Enay
Posts: 6
Joined: Wed Sep 29, 2004 8:02 am

include internal links - reihenfolge ändern?

Post by Enay »

hallo

ich möchte gerne im editor der aktuellen version die anzeige der internal links verändern. leider werden sie nicht in alphabetischer reihenfolge, sondern in reihenfolge der eingabe angezeigt. was bei 1,000 eingaben ziemlich chaotisch ist.

oder falls das nicht geht, kann man die eingabe des i-links im text von hand vornehmen?

dank im voraus

gruss
E.
Thorsten
Posts: 15729
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

das geht, da musst du das SQL-Query in der admin/header.php ändern.

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Enay
Posts: 6
Joined: Wed Sep 29, 2004 8:02 am

Post by Enay »

wow

ich nehme mal an du meinst wohl diese stelle:


var phpMyFAQLinks = {
<?php
$output = "'Include internal links' : '',\n";
$result = $db->query("SELECT id, lang, rubrik, thema FROM ".SQLPREFIX."faqdata WHERE active = 'yes'");
while ($row = $db->fetch_object($result)) {
$output .= "'".safeSQL(chopString($row->thema, 8))."' : '<a href=\"index.php?action=artikel&cat=".$row->rubrik."&id=".$row->id."&artlang=".$row->lang."\">".safeSQL(chopString($row->thema, 8))."</a>',\n";
};
$output = substr($output, 0, -2);
print $output;
?>
wärst du vielleicht noch so nett und könntest die stelle entsprechend ändern? in meinem alter ist das leider nicht mehr so leicht, so etwas mal eben zu lernen. :-(

vielen dank
Thorsten
Posts: 15729
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

sorry, natürlich! Nach willst du denn sortieren?

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Enay
Posts: 6
Joined: Wed Sep 29, 2004 8:02 am

Post by Enay »

danke :-)

ganz einfach alphabetisch absteigend nach den anfangsbuchstaben eines themas die in dem pull down menü :include internal links: angezeigt werden.
Thorsten
Posts: 15729
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

ändere diese Zeile

Code: Select all

 $result = $db->query("SELECT id, lang, rubrik, thema FROM ".SQLPREFIX."faqdata WHERE active = 'yes'"); 
in das

Code: Select all

 $result = $db->query("SELECT id, lang, rubrik, thema FROM ".SQLPREFIX."faqdata WHERE active = 'yes' ORDER BY thema"); 
bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Enay
Posts: 6
Joined: Wed Sep 29, 2004 8:02 am

Post by Enay »

hallo Thorsten
vielen dank für die hilfe :D
funktioniert prima.

gruss
E.
seelow
Posts: 2
Joined: Fri Oct 13, 2006 11:00 pm

Post by seelow »

ich habe gestern die aktuelle version 1.6.5 installiert und erstmal ein großes lob für die super arbeit.
leider habe ich auch nach längerer suche im forum nicht gefunden wie die links in dieser variante alphabetisch zu sortieren gehen.
die in diesem thread beschriebene lösung scheint nicht auf die version 1.6.5 übertragbar zu sein.

eventuell kann mir ja jemand auf die sprünge helfen.
danke schonmal im voraus
matteo
Posts: 572
Joined: Sun Nov 20, 2005 6:53 pm
Location: Italy

Internal Links with alphabetical order

Post by matteo »

Hi,
locate, backup and open [PATH_TO_PMFINSTALL]/admin/footer.php file and move these lines from:

Code: Select all

...
    $output = "'Include internal links' : '',\n";
    $result = $db->query('SELECT '.SQLPREFIX.'faqdata.id AS id, '.SQLPREFIX.'faqdata.lang AS lang, '.SQLPREFIX.'faqcategoryrelations.category_id AS category_id, '.SQLPREFIX.'faqdata.thema AS thema FROM '.SQLPREFIX.'faqdata LEFT JOIN '.SQLPREFIX.'faqcategoryrelations ON '.SQLPREFIX.'faqdata.id = '.SQLPREFIX.'faqcategoryrelations.record_id AND '.SQLPREFIX.'faqdata.lang = '.SQLPREFIX.'faqcategoryrelations.record_lang ORDER BY '.SQLPREFIX.'faqcategoryrelations.category_id, '.SQLPREFIX.'faqdata.id');
    while ($row = $db->fetch_object($result)) {
...
to:

Code: Select all

...
    $output = "'Include internal links' : '',\n";
    $result = $db->query('SELECT '.SQLPREFIX.'faqdata.id AS id, '.SQLPREFIX.'faqdata.lang AS lang, '.SQLPREFIX.'faqcategoryrelations.category_id AS category_id, '.SQLPREFIX.'faqdata.thema AS thema FROM '.SQLPREFIX.'faqdata LEFT JOIN '.SQLPREFIX.'faqcategoryrelations ON '.SQLPREFIX.'faqdata.id = '.SQLPREFIX.'faqcategoryrelations.record_id AND '.SQLPREFIX.'faqdata.lang = '.SQLPREFIX.'faqcategoryrelations.record_lang ORDER BY '.SQLPREFIX.'faqdata.thema');
    while ($row = $db->fetch_object($result)) {
...
Ciao,
Matteo
Last edited by matteo on Sat Oct 14, 2006 8:14 am, edited 1 time in total.
phpMyFAQ QA / Developer
Amazon.co.uk Wishlist
seelow
Posts: 2
Joined: Fri Oct 13, 2006 11:00 pm

Post by seelow »

thanks for the fast assistance :)
danny
Posts: 19
Joined: Mon Aug 16, 2004 1:53 pm

Post by danny »

In der Version 2.0.7 muss man an ganz anderer Stelle Hand anlegen. Falls das noch jemand sucht:

In der Datei Faq.php im Bereich "$orderBy = ' ';" muss folgendes geändert werden:
Alt

Code: Select all

case FAQ_SORTING_TYPE_FAQTITLE_FAQID:
$orderBy = sprintf("
ORDER BY
fcr.category_id,
fd.thema %s",
$sortOrder);
Neu

Code: Select all

case FAQ_SORTING_TYPE_FAQTITLE_FAQID:
$orderBy = sprintf("
ORDER BY
fd.thema %s",
$sortOrder);
Hoffe, dass dies nicht auch noch anderweitig irgendwelche Sortierungen (ungewollt) verändert. Aber selbst wenn, fügt man die Zeile zur Not wieder ein.

Gruß
Daniel
Post Reply