Beiträge von cywhale
-
-
Ich glaube mit der ID hat das nichts zu tun, du hast '<h5>...</h5>' innerhalb eines <p></p>-Blockes stehen was hier in der Tidy/Validator-Extension des FF gemeldet wird. Ein Heading-Tag muss ausserhalb der <p></p>-Blöcke stehen:
-
Und Nachteil wäre z.B. der (b. hohem Traffic vielleicht auffallende) Zeitaufwand für das extra-include() eines Plugins durch WordPress und das Ausführen desselbigen.
Wenn die Zeile valide ist und keine negativen Effekte verursacht -- warum nicht, der Befehl wlwmanifest_link() besteht nur aus einem 'echo' und einem Abruf von 'bloginfo(wpurl)'.
Andererseits geben die Zeilen Aufschluss über die verwendete Mindestversion von WP - wenn mans nicht braucht warum sollte man das herumposaunen.Falls man sowiso schon eine functions.php in seinem Theme verwendet kann man mit den folgenden Zeilen darin (spart das extra-includen eines Plugins)
- den RSD-Link entfernen
- den WLWManifest-Link entfernen
- generator : Wordpress irgendeineVersion entfernen -
Wie genau definierst Du 'als CMS nutzen', was für Seiten werden gesucht?
Zum Thema SIcherheit -- irgendwo habe ich mal eine Statistik gesehen nach welcher WordPress mehr Sicherheitslücken aufweisen soll als z.B. Drupal (leider nicht gebookmarked). Andererseits hat jede grössere Web-Software Sicherheitslücken, je grösser und unübersichtlicher der Sourcecode desto eher schleichen sich Fehler ein. Auch seit Jahren genutzte und weiterentwickelte 'normale' Software bekommen immer wieder Sicherheitsfixes, Beispiel ist z.B. der Druckerserver Cups unter Linux.
Vorteil bei WordPress: Bei Bekanntwerden sehr schnelle Sicherheitsfixes (z.B. 2.5.1), grosse Community & Entwicklergemeinschaft, d.h. Sicherheitslöcher werden ggf. schneller gefunden und/oder behoben.
Nachteil: Durch eigene Themes und frei erstellbare Plugins tun sich natürlich auch schnell neue Löcher auf -- die wiederum auch wieder von den Autoren schnell behoben werden (sollten) sofern diese informiert werden. Durch Apache als Server und .htaccess lassen sich viele Sicherheitslücken schon unschädlich machen bevor sie überhaupt angesprochen werden können.Derzeit arbeite ich an einem grösseren Artikel zum Thema Sicherheit/WordPress, wenn er soweit ist werde ich Dir einen Link zukommen lassen.
Grüsse -
Plugin SearchEverything installieren, in den Optionen Haken setzen wo gesucht werden soll und Haken weglassen wo nicht gesucht werden soll, dann testen ob Pages weiter gefunden werden. So hab ich das jedenfalls verstanden :)
Grüsse
-
So. Hab bissl geforscht, das hier ist meine aktuelle image.php:
PHP
Alles anzeigen<?php get_header(); ?> <div id="content"> <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <div class="post" id="post-<?php the_ID(); ?>"> <h1><a href="<?php echo get_permalink($post->post_parent); ?>" rev="attachment"><?php echo get_the_title($post->post_parent);?></a> » <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h1> <div class="entry"> <div class="aligncenter"> <?php echo wp_get_attachment_image( $post->ID, 'large' ); ?> </div> </div> <div class="pagination"> <div class="alignleft"><?php previous_image_link() ?></div> <div class="alignright"><?php next_image_link() ?></div> </div> <br class="clear" /> </div> <!-- <?php trackback_rdf(); ?> --> <?php endwhile; ?> </div> <?php comments_template(); ?> <?php else : ?> <h2 class="center">Nicht gefunden</h2> <p class="center">Sorry, aber du suchst gerade nach etwas, was hier nicht ist.</p> <?php include (TEMPLATEPATH . "/searchform.php"); ?> </div> <?php endif; ?> <?php get_footer(); ?>Das ist eine komplette image.php die folgende Aufgaben erfüllt:
- Überschrift ist Elternseite (verlinkt) » Bildtitel
- Bildanzeige im Vollformat, nicht weiter verlinkt (mag keine Bild-einfach-im-Browser-Ansichten)
- Darunter Thumbnails für vorheriges/nächstes Bild (gibts das auch in Textform?)
- Kommentartemplateeinbindung, wenn nicht gewünscht einfach entfernen.Für den einfachen Header einfach das
PHP<h1><a href="<?php echo get_permalink($post->post_parent); ?>" rev="attachment"><?php echo get_the_title($post->post_parent);?></a> » <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h1>als
PHP<h1><a href="<?php echo get_the_title($post->post_parent);?> » <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a></h1>umschreiben (Link weg), dafür für einen Zurücklink unter dem Bild folgendes an geeigneter Stelle einfügen:
Hoffe damit kannst Du oder andere etwas anfangen...
-
Es fehlt das abschliessende </li> ? Oder wäre das zu einfach und ist ein Kopierfehler. Ohne Link zur betroffenen Seite oder Validierungsergebnis können wir Dir wirklich nicht weiterhelfen.
-
Kann man sich das irgendwo angucken? Wenn die Seite nicht validiert -- was sind die Fehlermeldungen? Wenn mit 'Design' das Theme gemeint ist - ja, kann gut daran liegen dass das Theme und die eingefügten XHTML-Tags für die Linkgeschichten nicht zusammenpassen.
-
New Features in WordPress 2.5 | UC2
ZitatSearch Improved: The long requested improvements to the WordPress built-in search functions have been implemented and search now includes Pages as well as posts. Those using Plugins or search add-ons might want to try it out and compare which does the best job for your search efforts, though some search Plugins might not work with the new improvements.
Wusste doch das ich das mal gelesen habe :)
-
Ja, wp_get_attachment_url() benutzen (wenn es denn funktioniert, ungetestet) und den obigen Originalcode bearbeiten und als gallery-Shortcode benutzen, das müsste das Ziel 'Grosses Bild als Direktlink' erreichbar machen.
Für meinen Teil bin ich mit dem 'image.php'-Template zur Anzeige des Grossformats recht zufrieden, werde da etwas weiter rumprobieren.
Edit: Alphawolf, gerade gefunden :Plugin API/Filter Reference « WordPress Codex
Da ist ein Filter für 'attachment_link' gelistet. -
Momeeeent - das oben ist kein 'Script zum testen' sondern ein Auszug des Originalcodes (sh. URL).
Habe gerade etwas rumgespielt, eine Ansicht des grossen Bildes in eigener Unterseite lässt sich so erreichen (WP 2.5+):
- WEnn nicht vorhanden eine templateverzeichnis/image.php anlegen (kopierte single.php)
- Alle unnötigen Ausgaben entfernen (the_content, the_excerpt..., Kommentare, Metadaten,...)
- statt the_content-Ausgabe folgendes einfügen (an gleicher Stelle)
Da kein Link drumrum ist wird einfach das Bild angezeigt, fertig. Funktioniert in meiner Theme-Screenshot-Gallery gut, jetzt muss ich mich nur noch ums schönere Formatieren kümmern :) -
Man könnte den Filter 'post_gallery' eine eigene Galleriefunktion übergeben die dann auf das Bild in Rohform verweist oder ein eigenes Template o.Ä.
Nachteil ist dass man dann die komplette Gallerieanzeige auch implementieren muss...
Edit: Oder man gibt dem gallery-Shorttag eine neue Funktion (Overriding), das Original in /wp-includes/media.php:
Code
Alles anzeigenadd_shortcode('gallery', 'gallery_shortcode'); function gallery_shortcode($attr) { global $post; // Allow plugins/themes to override the default gallery template. $output = apply_filters('post_gallery', '', $attr); if ( $output != '' ) return $output; // We're trusting author input, so let's at least make sure it looks like a valid orderby statement if ( isset( $attr['orderby'] ) ) { $attr['orderby'] = sanitize_sql_orderby( $attr['orderby'] ); if ( !$attr['orderby'] ) unset( $attr['orderby'] ); } extract(shortcode_atts(array( 'orderby' => 'menu_order ASC, ID ASC', 'id' => $post->ID, 'itemtag' => 'dl', 'icontag' => 'dt', 'captiontag' => 'dd', 'columns' => 3, 'size' => 'thumbnail', ), $attr)); $id = intval($id); $attachments = get_children("post_parent=$id&post_type=attachment&post_mime_type=image&orderby={$orderby}"); if ( empty($attachments) ) return ''; if ( is_feed() ) { $output = "\n"; foreach ( $attachments as $id => $attachment ) $output .= wp_get_attachment_link($id, $size, true) . "\n"; return $output; } $listtag = tag_escape($listtag); $itemtag = tag_escape($itemtag); $captiontag = tag_escape($captiontag); $columns = intval($columns); $itemwidth = $columns > 0 ? floor(100/$columns) : 100; $output = apply_filters('gallery_style', " <style type='text/css'> .gallery { margin: auto; } .gallery-item { float: left; margin-top: 10px; text-align: center; width: {$itemwidth}%; } .gallery img { border: 2px solid #cfcfcf; } .gallery-caption { margin-left: 0; } </style> <!-- see gallery_shortcode() in wp-includes/media.php --> <div class='gallery'>"); foreach ( $attachments as $id => $attachment ) { $link = wp_get_attachment_link($id, $size, true); $output .= "<{$itemtag} class='gallery-item'>"; $output .= " <{$icontag} class='gallery-icon'> $link </{$icontag}>"; if ( $captiontag && trim($attachment->post_excerpt) ) { $output .= " <{$captiontag} class='gallery-caption'> {$attachment->post_excerpt} </{$captiontag}>"; } $output .= "</{$itemtag}>"; if ( $columns > 0 && ++$i % $columns == 0 ) $output .= '<br style="clear: both" />'; } $output .= " <br style='clear: both;' /> </div>\n"; return $output; }Die Idee ist interessant, soll das Bild an sich im Browserfenster geöffnet werden oder eine Templateseite mit dem Bild als Inhalt? Diese Variante ist für mich auch interessant, vielleicht setze ich mich dran falls Zeit bleibt.
-
Das Setzen einer Textfarbe verbieten würde z.B. auf einer Mehr-Autoren-Blogseite Sinn machen, mit zu vielen, verschiedenen Formatierungsänderungen verschiedener Autoren wird das Gesamtbild immer 'unrunder'.
SuMu hat IMHO Recht, arbeite auch fast durchgängig mit dem HTML-Modus, macht auch mir das Posten wesentlich leichter und valider (durch Selbstkontrolle und Deaktivieren von wpAutoP).
-
Habs gerade nochmal bei mir getestet, bei WordPress-Standard-Gallery bleibt das Alt-Tag leer (auch wenn Daten angegeben sind). Das Cleaner Gallery Plugin (Cleaner WordPress Gallery Plugin: Valid XHTML with integrated Lightbox support) behebt einige Probleme der Galleryfunktion (unter anderem dieses) und stellt validen Code bereit.
-
Ups, danke Alphawolf.
-
zeitmeister: Habe mir den Feed im Firefox angesehen, da sind die Bilder im Quelltext vorhanden, werden aber nicht abgezeigt. Im Feedreader (Liferea) sind alle Bilder dabei.
Auf die schnelle hilft vielleicht folgender Code in den wp-content/<das-template>/functions.php (wenn noch nicht bestehend einfach neu erstellen und die Zeilen in <?php am Anfang und ?> am Ende einfassen, wird von WP automatisch eingebunden):
Codefunction cy_noImagesFeed($content){ $content=preg_replace("=<img(.*)/>=Uims", "»Screenshot«", $content); return($content); } if(is_feed()){ add_filter('the_content', 'cy_noImagesFeed',99);Der Code entfernt alle Bilder aus dem Feed und ersetzt sie durch das Wort Screenshot. Links um die Bilder herum bleiben erhalten ('Screenshot' wird dann klickbar).
Grüsse
-
Habe das bei mir so gelöst (nur kurz das Schema da wenig Zeit):
- Post-Zähler in Loop eingebaut
- Erstes Posting volle Breite (fällt hier weg)
- Wenn Postcount>1 Containerdiv über volle Breite für 2 Spalten öffnen
-- Für jeden Beitrag Div mit abwechselnd (Postcount % 2 ==0) float:left/float:right-Klasse mit 45% Breite.
- nach dem 5. Post <br class="clear-both-Klasse"> und Containerdiv wieder schliessen.In diesem Fall:
Breites ContainerDIV, abwechselnd float;left/right, halbe Breite für die Posts, dann clear:both-<br>, dann ContainerDIV wieder zu.
-
Wurden die Bilder mit WP eingebunden oder einem Galleryplugin?
Spontan würde mir ein Filter über Feeds einfallen welcher einfach alle <img />-Tags entfernt... -
In welcher .php datei wird denn der code für den post generiert? da könnte ich ja am Ende ein Element mit clear einfügen...
Bin mir da auch nicht sicher, wird uns Susanne81 nur selbst beantworten können... -
Wenn das BR-Tag immer eingefügt werden soll (bin mir da grad nicht sicher - einerseits 'am Ende' andererseits 'innerhalb' - grundsätzlich oder nur bei Bedarf? Aber warum sonst sollte man direkt die Content-Funktion bearbeiten wollen?) würde es wirklich ausreichen (und den einfachsten Weg darstellen) in der singles.php direkt nach der Ausgabe des Content ein <br/ class="deine-clear-klasse"> einzufügen, alternativ ohne Templatemanipulation käme folgendes in Frage:
Man lege im Templateordner eine 'functions.php' (wird automatisch eingebunden, falls die Datei schon existiert den Code anhängen an, Inhalt folgender:Codefunction deinname_addbr($content){ $content. = '<br class="deine-clear-klasse"/>'; return($content); } add_filter('the_content','deinname_addbr');
Dieser Filter fügt das Element einfach on-the-fly an den Content an, in der Datenbank wird nichts geändert, fertig. Das 'deinname' existiert einfach um Konflikte mit evtl. anderen 'addbr'-Funktionen zu vermeiden. Wenn das Element nur bei Bedarf eingebunden werden soll stellen die Custom Quicktags IMHO die einzige vernünftige Alternative zum HTML-Modus dar.Grüsse