Έργο Ενίσχυσης Ανοιχτών Τεχνολογιών

Στα πλαίσια του έργου “Ηλεκτρονικές Υπηρεσίες για την Ανάπτυξη και τη Διάδοση του Ανοιχτού Λογισμικού” το οποίο διενεργήθηκε από το ΕΔΕΤ σε συνεργασία με την ΕΕΛ/ΛΑΚ ανέλαβα την ανάπτυξη πυλών πληρωμής για τη δημοφιλή πλατφόρμα ηλεκτρονικού εμπορίου Woocommerce

To Woocommerce είναι ένα plug-in το οποίο αναπτύσεται στηριζόμενο στο πιο δημοφιλές CMS  στο ίντερνετ αυτή τη στιγμή το WordPress.

Αναπτύχθηκαν 2 plug-in που προσφέρουν διασύνδεση για πληρωμές με χρήση καρτών ( πιστωτικών / χρεωστικών / προπληρωμένων ) για τις Τράπεζες Πειραιώς και Εθνική. Η χρήση καρτών είναι η καλύτερη λύση τόσο για τους έμπορους για την εξασφάλιση των πληρωμών τους  όσο και για τους καταναλωτές για την εξασφάλιση των αγορών τους.

Τα plug-in προσφέρονται με άδεια ΕΛΛΑΚ και ο πηγαίος κώδικας είναι διαθέσιμος στο Github.

Επίσης μπορείτε να κατεβάσετε ή να εγκαταστήσετε απευθείας στη WordPress εγκατάστασή σας από το αποθετήριο του WordPress στους παρακάτω συνδέσμους.

Εθνική Τράπεζα: National Bank of Greece Payment Gateway for Woocommerce

Τράπεζα Πειραιώς : Piraeus Bank Greece Payment Gateway for WooCommerce

Tα Plug-in χρησιμοποιούν τη μέθοδο redirect και δεν απαιτείται η ύπαρξη SSL στο site.

Έχουν δοκιμαστεί για τις εκδόσεις WP 4.+ και Woocommerce 2.3+ .

Posted in Programming

Woocommerce – Hide out of stock items that appears using “Layered nav: filter”

I come across a pretty annoying bug-feature in woocommerce. If someone uses Layered navigation filters and has variable products based on a specific attribute, the filtering will return all the products with the specific attribute, even if this variation is out of stock.  If someone  is selling clothes-shoes for example this is quite disturbing.

This bug is reported to Woocommerce github issue tracker here. It is rated as a won’t fix mainly because the attributes of a variable product is not directly connected with the Taxonomy Terms.

Building upon a solution from http://www.stimart.net/web/woocommerce-hide-out-of-stock-items-that-appears-using-layered-nav-filter-widget/ which is removing the products before showing in the template pages , I went deeper in the woocommerce core. This was mainly because the aforementioned solution had trouble with more advanced themes and especially with the pagination. In simple themes it worked almost perfectly.

So this is my solution.

Open file in woocommerce plugin -> includes -> class-wc-query.php

Find Function

After

Add

And after

Add

Where pa_size can be renamed to your attribute.

Posted in Programming

5 Does and Don’ts of Programming

Does

  1. Comment your code.

    Commenting your code makes it so much easier for someone else to read and understand what you were coding about,  and also when you see your code after 6 months or  a year you won’t  be scratching your head “What the F#(k was I doing? “

    what_the_flux_560

  2. Back up, back up ,save and git…

    Save your code in regular intervals.Shit happens so if the power goes out or your IDE crashes or even Photoshop you want lose all of your progress.
    Saving your code can be something you do in every line you write for coding languages like PHP but coding in Java or C can mean that you must write a chunk of code before you can
    compile it properly.Saving can save your life or at least save you from a minor heart attack and a nervous breakdown when the lights go off.
    Back your project to another medium is also necessary because disks fail or even you can accidentally press delete and lose everything.
    Last but not least use Git or any other means of versioning system. Versioning can help you when you don’t know how you broke your perfectly working code.It’s so easy and the advantages of
    Version Control Systems (VCS) are so great that we need another post for them.

    keep-calm-and-use-git-1

  3. Pair programming

    When working on a project that evolves other programmers it’s a good thing to use pair programming. Two set of eyes are better than one after all.
    Two people make less mistake and not because you will be embarrassed by the really silly ones but it’s more probable that they will be fix in the beginning.
    Also the code will be easier readable because it is meant to be read by more than one person.
    Just make sure no-one gets bored, staring at a screen without doing anything else is quite tiring. Take terms and do different tasks in each session, maybe one can code and the other can test and then swap.

    v2DR2

Don’ts

  1. Don’t be a programming language zealot.

    It’s ok to be a evangelist but absolution is wrong is so many ways and so is proselytism. Every language has it’s strengths, merits but also disadvantages.
    Don’t try to force other people that this Scala is so much better than Java or whatever. When the need occurs and if the person programming is open minded they will try to choose the right solution for the problem.

    functional

    CC-NC: http://www.xkcd.com/1270/

  2. Don’t underestimate bash scripting

    I know most people don’t like giving console commands, although it’s much more efficient than most GUI in many cases. But whether you are a system administrator or a programmer bash scripting will be useful for carrying out repetitive tasks. Trying to take daily backups of a website or even installing software to multiple computers.

I-love-bash

 

Have fun programming!

Posted in Blog, Programming

Γιατί οι e-εφημερίδες δεν ρωτάνε τους τυπογράφους;

Πρίν μερικά χρόνια σαν πρωτοετής φοιτητής πληροφορικής, είχα παρακολουθήσει μια παρουσίαση για δημιουργία κειμένων με χρήση LaTeX  (προφέρεται ‘λάτεχ’). Στη παροσίαση αυτή είχε αναφερθεί ότι η συγκεκριμένη γλώσσα δημιουργήθηκε για να μπορεί ο καθένας να γράφει κείμενα και να παρουσιάζονται ακολουθώντας τις τεχνικές που έχουν τελειοποιήσει με τα χρόνια οι τυπογράφοι με τις οποίες παράγουν βιβλία, εφημερίδες κτλ.

Καθώς διαβάζω αρκετές ειδήσεις από τα ειδησιογραφικά site τα περισσότερα ανήκουν σε εφημερίδες κυρίως, παρατήρησα ότι όλα έχουν ένα συγκεκριμένο πρόβλημα.

Δεν κάνουν justify τα άρθρα τους.   Justify σε ελεύθερη ελληνική μετάφραση σημαίνει να υπάρχει πλήρης στοίχιση στα κείμενα τους.

Τα περισσότερα ακολουθούν τη default στοίχιση  δηλαδή να είναι στοιχισμένα αριστερά.

Είμαι σίγουρος ότι δεν έχετε δει καμία εφημερίδα να στοιχίζει τα κείμενα της αριστερά, οι τυπογράφοι των εφημερίδων ακολουθώντας τους κανόνες με τους οποίους γίνεται ένα κείμενα πιο ευανάγνωστο χρησιμοποιούν πλήρη στοίχιση.

Να σας το δείξω με μερικά παραδείγματα.
nea1imerisia1

Αυτό όμως που με ενοχλεί περισσότερο είναι ότι το συγκεκριμένο πρόβλημα λύνεται πάρα πολύ απλά με μια εντολή στο css τους.

Text-align : justify;

neaprotagon2imerisia

 

 

Ελπίζω κάποιος που διαχειρίζεται τέτοιους ιστότοπους να επικοινωνήσει με το web designer-developer τους για να τους τα διορθώσει.

Posted in Blog

My first blog post

to be written

Posted in Blog