WebsiteBaker - Tips
News (Blog) pagina's met een getal erbij in |
| WebsiteBaker - Tips >> Code / Hacks |
Standaard maakt WB voor een nieuws post een pagina aan met de titel als bestandsnaam. Om te voorkomen dat meerdere berichten met dezelfde titel elkaar in de weg zitten wordt het nummer van de huidige post aan de bestandsnaam toegevoegd.
Met een paar regels aanpassing kan je zorgen dat die niet meer voorkomen..
Voeg deze regels in vanaf regel 79 in het bestand /modules/news/save_post.php. Dat is direkt na de het verwijderen van een eventuele oude link.
$post_link = '/posts/'.page_filename($title);
if ( file_exists(WB_PATH.PAGES_DIRECTORY.'/'.$post_link.PAGE_EXTENSION) )
$post_link = '/posts/'.page_filename($title).$post_id;
Deze code gaat eerst uit van een pagina zonder nummer, en test of die al bestaat.
Als die pagina al bestaat zal het nummertje alsnog worden toegevoegd, maar die kans is normaal gesproken niet erg groot.
Deze aanpassing werkt alleen voor nieuw gemaakte pagina's. Pagina's die al bestonden met een nummertje zullen zo blijven bestaan, tenzij de titel wordt veranderd.
<< Naar het overzicht
Commentaren
| Dave | 28-04-2009 - 19:58 |
| Perfect! Ik vroeg mij al af waarom die cijfers aan de url werden gebracht. Had het patroon nog niet eens gezien. Bedankt Ruud! gr Dave (D72) Time: 28-04-2009 20:58:04 |
|
| Dave | 20-05-2010 - 14:56 |
| Rudd, met versie 2.8 zijn er een aantal kleine veranderingen gemaakt in save_post.php Bovenstaande is nog steeds relevant en werkt prima. Echter moeten er iets andere regels aangepast worden. In genoemde pagina deze regels vinden: // Specify the filename $filename = WB_PATH.PAGES_DIRECTORY.'/'.$post_link.PAGE_EXTENSION; create_file($filename, $file_create_time); } en veranderen in: // Specify the filename $post_link = '/posts/'.page_filename($title); if ( file_exists(WB_PATH.PAGES_DIRECTORY.'/'.$post_link.PAGE_EXTENSION) ) $post_link = '/posts/'.page_filename($title).$post_id; } Komt op hetzelfde neer, maar misschien gerichter sinds de veranderingen vanaf 2.8 gr Dave Time: 20-05-2010 15:56:59 |
|
| Dave | 20-05-2010 - 15:21 |
| * edit Sorry, was te vroeg met juichen. In de backend was niks op te merken. Als je een post maakt slaat hij hem gewoon netjes op. Alleen maakt hij de werkelijke artikel niet aan in de map 'post'. Jouw trucje werkt dus niet meer helaas. Vond het een super snippet. Wil de url altijd zo eenvoudig mogelijk houden. Of het nou wel of geen voordelen heeft. Dave Time: 20-05-2010 16:21:00 |
|
Commentaar toevoegen
Onderwerpen
- Modules (5)
- Snippets (4)
- Code / Hacks (10)
- Templates / CSS (4)
- Droplets (1)
- Van alles (1)
