Voor een website heb ik jaren geleden een eigen plugin geschreven. Deze plugin toont een formulier met velden. Zodra een bezoeker dit formulier heeft ingevuld wordt de data in een Excel bestand geplaatst. Dit bestand wordt vervolgens verstuurd als bijlage via de e-mail.
Om dit mogelijk te maken heb ik gebruik gemaakt van Zend Framework 1 Mail class en PHPExcel. Beiden worden al een paar jaar niet meer onderhouden en zijn dus deprecated. Tijd om te vervangen.
Als vervanger van de Zend Framework 1 Mail class maak ik nu gebruik van de wp_mail() functie die in WordPress zit. Dit scheelt enorm veel code. Met deze functie is het mogelijk om een in HTML opgemaakte mail te versturen. Daarnaast kan je als parameter een array met bijlagen opgeven.
Voor PHPExcel heb ik als vervanger PhpSpreadSheet gevonden. Dit is van dezelfde makers als van PHPExcel. Nieuw is dat de library nu een composer package is. Dit betekent dat je de package gemakkelijk met composer kan installeren. Alleen heb ik op mijn computer geen composer. Ook de gemiddelde hostingpartij laat het uitvoeren van composer commando’s niet toe.
Hoe kom ik dan aan PhpSpreadSheet? Na wat zoeken kwam ik uit op php-download.com. Op deze website kan je bekende composer packages downloaden die je direct in je vendor dir kan plaatsen. PhpSpreadSheet was ook een van de populairste packages. De versie was van september 2018 en loopt maar 1 versie achter.
Ik heb deze package gedownload en in mijn vendor dir geplaatst. Het werkte net alsof je zelf composer require hebt uitgevoerd in een terminal.