"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

[Wordpress] Auto-Tagging mit Simple Tags

mat 12.10.2010 - 20:31 24478 0 Thread rating
Posts

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25422
Nachdem ich gerade zwangsweise mit Wordpress arbeiten muss, bin ich so frei und poste hier einen Bugfix für das Auto-Tagging beim Simple Tag-Wordpress-Plugin, der sonst nirgendwo im Internet zu finden ist/war. Normalerweise nimmt man ja einfach ein anderes Plugin und hofft dann, dass das ordentlich funktioniert. In diesem Fall sind die Alternativen nicht wirklich der Hammer und gleichzeitig erfüllt das Simple Tag-Plugin ansonsten alle Wünsche. Und nachdem der Eingriff nur recht klein ist, zahlt es sich sogar aus. ;)

Das Problem liegt an der Priorität der Action für die Meta-Box, in dem man die Tags zusätzlich einfügen kann. Diese überschreibt das scheinbar zuvor aufgerufene Speichern der Auto-Tags. Hier ist der Fix:

File: simple-tags/inc/admin.php, Zeilen 89-93

Vorher/Before:
Code: PHP
		// Save tags from advanced input
		if ( $this->options['use_autocompletion'] == 1 ) {
			add_actions( array('save_post', 'publish_post'), array(&$this, 'saveAdvancedTagsInput'), 10, 2 );
			add_action('do_meta_boxes', array(&$this, 'removeOldTagsInput'), 1 );
		}
Nachher/After:
Code: PHP
		// Save tags from advanced input
		if ( $this->options['use_autocompletion'] == 1 ) {
			add_actions( array('save_post', 'publish_post'), array(&$this, 'saveAdvancedTagsInput'), 5, 2 );
			add_action('do_meta_boxes', array(&$this, 'removeOldTagsInput'), 1 );
		}
Im internen Editor von Wordpress sieht das so aus:

click to enlarge


Die Priorität der Actions save_post und publish_post wurde von 10 auf 5 gestellt. Bei mir ist das Zeile 91 im File. Nun sollte wirklich automatisch beim Abspeichern eines Posts/einer Page die Tags hinzugefügt werden. Wenn überhaupt welche definiert wurden. ;)

Falls das Auto-Tagging nun noch immer nicht funktioniert, sollte man vielleicht auch schauen, ob es überhaupt aktiviert ist. Unter Posts->Auto Terms gibt es einen Punkt namens Activation.

click to enlarge
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz