I august 2009 smed jeg opskriften på en lille stump PHP til generering af en dynamisk dato i nyhedslister til OPAC’en her på bloggen. Dengang medtog scriptet kun sidste måneds nyheder. Siden da er det blevet opdateret til at medtage både sidste og indeværende måneds nyheder, og der er også lavet en JavaScript version.
Implementering af PHP scriptet:
Opskriften er næsten identisk med den gamle, se forklaring her.
Sådan konstrueres de funktioner, der udregner månederne:
<?php
// Display last month
function showmonth() {
if (date("n") == 1) {
echo date("Y")-1 . "12";
} elseif (date("n") >= 2 && date("n") <= 9) {
echo date("Y") . "0" . date("n")-1;
} else {
echo date("Y") . date("n")-1;
}
}
// Display the current month
function showcurr_month() {
if (date("n") <= 9) {
echo date("Y") . "0" . date("n");
} else {
echo date("Y") . date("n");
}
}
?>
Sådan sættes funktionerne ind i et givent link (her en nyhedsliste over “romaner”):
<a href="https://www.bibfolk.horsens.dk/sites/WWW/pub/search.html?doaction=search&data=scode_ccl=(ad%3D<?php showmonth() ?>%3F%2520eller%2520ad%3D<?php showcurr_month() ?>%3F)%2520og%2520bh%3Dvo%2520og%2520ma%3Dte%2520og%2520bh%3Droman%20&request_attr_sortformat=1%20&request_attr_defaultpage=20%20&rec=0">Romaner</a>
Implementering af JavaScriptet:
Hent filen nyhedslister.js her.
Scriptet er noget værre klyt, men det virker. Hele nyhedslisten er hard coded i .js filen for at få det til at virke på OPAC’ens forside, så hvis der skal rettes links eller søgninger til, skal de rettes i denne fil. Heri rettes også basis URL’en, således at søgningen foretages i din og ikke Horsens Biblioteks OPAC. Linje 35 rettes således til dit eget domæne og HTGROUP:
var basic_url = 'https://www.bibfolk.horsens.dk/sites/WWW/pub/search.html?doaction=search&data=scode_ccl=';
Scriptet placeres på din webside, hvor det ønskes med <script> tagget:
<script src="nyhedslister.js" type="text/javascript"></script>
Generering af links til OPAC:
… er generelt noget værre hejs, fordi OPAC’en ikke automatisk genererer en URL pr. faustnr. Det ville ellers gøre livet en hel del lettere for både brugere og personale. Derfor må man gå en omvej.
Linksene i nyhedslisterne er således genereret med dette lille værktøj, der er beregnet til at lave links ind i Horsens Biblioteks OPAC.
ÆØÅ og andre specialtegn
Specialtegn som f.eks. ÆØÅ kan volde problemer i links, fordi de skal URL encodes. I den sammenhæng har W3schools.com en nyttig URL encoding reference her (scroll lidt ned på siden).