Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Verfasser Ansicht ändern
#31
Das ist über die Funktion wordwrap() möglich, du musst diese nur ergänzen.

Vorher:
PHP-Code:
$post['fidx'] = htmlspecialchars_uni($post['fidx']); 
Nachher:
PHP-Code:
$post['fidx'] = wordwrap(htmlspecialchars_uni($post['fidx']), "20""<br />"); 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#32
Michael schrieb:Achso, ich dachte du meinst das richtige Profil. Du musst nur die Variable {$post['fidx']} ins Template postbit_author_user an der gewünschten Stelle einfügen, wobei du x durch die ID des Feldes ersetzen musst.

Michael schrieb:Bei den Ankündigungen oder bei den neuesten Beiträgen?

tom5760 schrieb:Anbei der Sreenshot    
mbg
Thomas
(used Vers 1.2.7)
Zitieren
#33
Die nachfolgende Modifikation kann u.U. viele Queries verursachen!

Öffne die Datei portal.php und suche nach:
PHP-Code:
$query $db->query("
    SELECT t.*, u.username
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
    WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
    ORDER BY t.lastpost DESC 
    LIMIT 0, "
.$mybb->settings['portal_showdiscussionsnum']
); 
Ersetzen durch:
PHP-Code:
$query $db->query("
    SELECT t.*, u.username, uf.fid1
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
    LEFT JOIN "
.TABLE_PREFIX."userfields uf ON (uf.ufid=t.uid)
    WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
    ORDER BY t.lastpost DESC 
    LIMIT 0, "
.$mybb->settings['portal_showdiscussionsnum']
); 
Suchen nach:
PHP-Code:
$thread['subject'] = htmlspecialchars_uni($thread['subject']); 
Darunter einfügen:
PHP-Code:
$thread['country'] = htmlspecialchars_uni($thread['fid1']); 
Ersetze fid1 ggf. mit der ID des Profilfeldes, also fidX. Danach kannst du die Variable {$thread['country']} im Template portal_latestthreads_thread benutzen.

Suche nach:
PHP-Code:
$query $db->query("
    SELECT t.*, t.username AS threadusername, u.username, u.avatar
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid = t.uid)
    WHERE fid IN ("
.$mybb->settings['portal_announcementsfid'].") AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
    ORDER BY t.dateline DESC
    LIMIT 0, "
.$mybb->settings['portal_numannouncements']
); 
Ersetzen durch:
PHP-Code:
$query $db->query("
    SELECT t.*, t.username AS threadusername, u.username, u.avatar, uf.fid1
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid = t.uid)
    LEFT JOIN "
.TABLE_PREFIX."userfields uf ON (uf.ufid = t.uid)
    WHERE fid IN ("
.$mybb->settings['portal_announcementsfid'].") AND t.visible='1' AND t.closed NOT LIKE 'moved|%'
    ORDER BY t.dateline DESC
    LIMIT 0, "
.$mybb->settings['portal_numannouncements']
); 
Suche nach:
PHP-Code:
eval("\$announcements .= \"".$templates->get("portal_announcement")."\";"); 
Darüber einfügen:
PHP-Code:
$announcement['country'] = htmlspecialchars_uni($announcement['fid1']); 
Ersetze fid1 ggf. wieder mit der ID des Profilfeldes. Danach kannst du die Variable {$announcement['country']} im Template portal_announcement benutzen.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#34
Hab alles eingefügt und 3x kontrolliert, in den Template die Du genannt hast hab ich zur Kontrolle einen zeilenubruch eingefügt. lediglich eine leerzeile ist zu sehen. habs auch anstelle von ['country'], ['fid10'] eingefügt. leider funkt nicht.
mbg
Thomas
(used Vers 1.2.7)
Zitieren
#35
Ich habe den Code gestestet und er funktioniert. Hast du fid1 überall ersetzt, auch in den Queries?

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#36
ja die fid1 , auf fid10 mein "country", was meinst du mit Queries? hab nach deiner anleitung gemacht.
mbg
Thomas
(used Vers 1.2.7)
Zitieren
#37
Ich hatte schon den Code
PHP-Code:
$post['fidx'] = htmlspecialchars_uni($post['fidx']); 
abgeändert, daher frage ich noch einmal:

Wie kann ich diesen Code
PHP-Code:
$post['fidx'] = "Profilfeld: ".htmlspecialchars_uni($post['fidx'])."<br />"

mit diesem verbinden?

PHP-Code:
$post['fidx'] = wordwrap(htmlspecialchars_uni($post['fidx']), "20""<br />"); 

Der erste ist ja dafür zuständig, dass bei Usern, die nichts eingetragen haben, im Postbit kein Absatz entsteht.
Danke!
Zitieren
#38
@tom5760: In den zwei geänderten Datenbankabfragen steht auch 2x uf.fid1. Hier musst du das auch ändern.

@klaus: Ersetze
PHP-Code:
$post['fidx'] = "Profilfeld: ".htmlspecialchars_uni($post['fidx'])."<br />"
durch
PHP-Code:
$post['fidx'] = "Profilfeld: ".wordwrap(htmlspecialchars_uni($post['fidx']), "20""<br />")."<br />"

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#39
Ist da vielleicht ein fehler?

eval("\$post['attachments'] = \"".$templates->get("postbit_attachments")."\";");
}
}
$announcement['country'] = htmlspecialchars_uni($announcement['fid10']); <<<<<Richtig?
eval("\$announcements .= \"".$templates->get("portal_announcement")."\";");
unset($post);
}
mbg
Thomas
(used Vers 1.2.7)
Zitieren
#40
Das ist richtig so.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Verfasser - z.B. heutige Beiträge Anschi 2 625 06.03.2009, 12:50
Letzter Beitrag: Anschi