Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

All other Modules

Discuss all other Modules here.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

newsletter template path


Reply

14 Posts   2740 Views

Avatar
Mad_Clog

4 August 2010 at 7:29pm Community Member, 78 Posts

Did you even read my posts?
That's the exact location i told you to put them in.
*shrug*

Avatar
MarcusDalgren

4 August 2010 at 7:35pm Community Member, 288 Posts

I'm sorry I missed where you put them too Mad_Clog but this makes more sense now. The way the module is written it should function with the templates placed in your themes dir but right now that part seems to be broken. Could you test that?

Just move your email templates to templates/email or templates/Email and flush. If you end up with an empty list then the issue is there for you too. Lucky for us that it checks the project dir as well.

Avatar
firstpixel

5 August 2010 at 12:17am Community Member, 16 Posts

My problem was that in the newsletter section in the admin I couldn't select my template, no matter where I put the files. That's why I had to input the template name into the database directly and then it worked with the path of Mad_Clog.

Greetings!

Avatar
flozwo

13 September 2011 at 12:49am Community Member, 5 Posts

Hi
file: NewsletterAdmin.php line: 480

there need an array.
in time $paths is a string, but it must an array

$paths = self::template_paths();

$paths[] = self::template_paths();

   public function templateSource(){
      $paths[] = self::template_paths();
      //$paths = "/themes/hshl/templates/email";
      
      $templates = array( "" => _t('TemplateList.NONE', 'None') );

      if(isset($paths) && count($paths)){
         $absPath = Director::baseFolder();
         if( $absPath{strlen($absPath)-1} != "/" )
            $absPath .= "/";

         foreach($paths as $path){
            $path = $absPath.$path;
            if(is_dir($path)) {
               $templateDir = opendir( $path );

               // read all files in the directory
               while( ( $templateFile = readdir( $templateDir ) ) !== false ) {
                  // *.ss files are templates
                  if( preg_match( '/(.*)\.ss$/', $templateFile, $match ) ){
                     $templates[$match[1]] = $match[1];
                  }
               }
            }
         }
      }
      return $templates;
   }

Avatar
Willr

14 September 2011 at 1:08pm Forum Moderator, 5511 Posts

flozwo - sounds like thats a bug? Perhaps submit the fix to the github repo (you can edit a file inline in the github repo if you don't have time to submit via git).

Avatar
Mauro74

22 September 2011 at 9:02pm Community Member, 30 Posts

Talking about templates, is it possible to use the draft as an editable zone in the template? Something like:

<table>
<tr>
<td>
Hello
</td>
<td>
this is a
</td>
<td>
newsletter
$Content
</td>
</tr>
</table>

Where $Content would be the content of the draft?