Recently the question (How to add add custom functions to a theme) was posed in Récemment, la question (Comment ajouter ajouter des fonctions personnalisées à un thème) a été posée dans WordPress Support Forum WordPress forum de support . Personally I faced the same question when re-designing Personnellement, je confronté à la même question à nouveau lors de la conception this site ce site . The following is a discussion of the option with the pros and cons. Ce qui suit est une discussion de l'option avec les avantages et les inconvénients.

There are two solutions. Il existe deux solutions.
The first is to create a plugin which goes with the theme. La première est de créer un plugin qui va de pair avec le thème. However the theme, when invoking functions defined in the plugin should check first for the availability of the function. Toutefois, le thème, lorsque l'on invoque les fonctions définies dans le plug-in devrait d'abord pour vérifier la disponibilité de cette fonction. It should also provide a fallback option if the plugin is not available or has not been activated. Il devrait également prévoir une option de repli si le plugin n'est pas disponible ou n'a pas été activé.

 if(function_exists('your_function_name')) {     // Invoke your function: your_function_name()... if (function_exists ( 'your_function_name')) (/ / Appelez votre fonction: your_function_name ()... else {     // Execute fallback option } else (/ / Exécuter l'option de repli) 

The advantages are: Les avantages sont les suivants:

  • The plugin can be independently managed. Le plugin peuvent être gérés indépendamment.
  • The plugin can be reused for other purposes. Le plugin peut être réutilisée à d'autres fins.

The disadvantages are: Les inconvénients sont les suivants:

  • It requires another additional step for the theme user to remember. Il exige une autre étape supplémentaire à franchir pour thème l'utilisateur de se souvenir.
  • It slightly complicates development and testing. Il complique un peu de développement et d'essais.

The second solution to this problem would be to incorporate the functionaility in a php file (as usual) which resides in the theme directory. La deuxième solution à ce problème serait d'incorporer les functionaility dans un fichier php (comme d'habitude) qui se trouve dans le répertoire thème. This file is included in header.php like: Ce fichier est inclus dans header.php comme:
include (’your_php_file.php’); include ( 'your_php_file.php');

Yes you may also require it for simplicity like: Oui, vous mai également besoin de simplicité comme:
require (’your_php_file.php’); require ( 'your_php_file.php');

The advantage to this approach is simplicity of usage and deployment by end-users. L'avantage de cette approche est la simplicité d'utilisation et le déploiement par les utilisateurs finaux. It also simplifies development. Elle simplifie également le développement.

If the user later decides to switch to a different theme and yet wants to retain the functionality, he would have to re-purpose the custom code into a plugin. Si l'utilisateur décide plus tard de passer à un autre thème et veut encore de conserver la fonctionnalité, il faut la ré-fin, le code personnalisé dans un plugin.

In essence the reusability of the custom functionality determines the ideal location of the custom code. En substance la réutilisation de la coutume fonctionnalité détermine l'endroit idéal dans le code des douanes.