MyBB.de Forum

Normale Version: Verfasser Ansicht ändern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4 5
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 />"); 
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[attachment=2088]
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.
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.
Ich habe den Code gestestet und er funktioniert. Hast du fid1 überall ersetzt, auch in den Queries?
ja die fid1 , auf fid10 mein "country", was meinst du mit Queries? hab nach deiner anleitung gemacht.
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!
@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 />"
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);
}
Das ist richtig so.
Seiten: 1 2 3 4 5