Plugins

Technical discussion for developers and service providers

Plugins

Postby TBotNik » 2:44pm, Sun 13 Oct, 2013

All,

Do plugins exist for PHPList?

In particular, I need a "Campaign" plugin, so I can:
  • Assign messages and/or lists to Campaigns,
  • Add new users to an existing list (Marking them as "New" in DB),
  • Determine which previous campaign messages will be sent to new users by:
    • If weekly campaign/newsletter, how many weeks back are sent,
    • If marketing campaign, what existing products/services messages are sent,
    • Allow for other user/campaign interactions.
  • Have all new user mail-out schedule for send out automatically, by/for above criteria,
  • Allow "sub-Campaigns" for users/customers showing specific product/service interests,
  • Glean new users from my email client (Thunderbird is my default email client)*,
  • Allow new DB driven, Message composer (Where newsletter can pull in existing needed paragraphs, without need of re-composing, but just selection from list in DB.
* EMailer Importer should be it's own separate plugin!

I also need to see "First Name", "Last Name" in the users table, so it will support direct imports rather than needing to be "processed" to spread this information to other tables.

Does something like this exist or do I start out on my own? If I start on my own, is there standards set for plugin creation?

Can PHPList be integrated into Enterprise Modules or allow for their use?

OH FYI, I'm on version 2.10.17, with PHP version 5.3.10 and MySQL 5.5.32!

Cheers!

TBNK
TBotNik
PL Nut
 
Posts: 33
Joined: 9:26pm, Thu 04 Oct, 2012

Re: Plugins

Postby Dragonrider » 4:17pm, Sun 13 Oct, 2013

plugins for the previous versions of phpList are found in the Plugins forum and are normally stored in the admin/plugins directory on the server, the path to which is set in the config/config.php file.

[FIRST_NAME] and [LAST_NAME] can be set via attributes and then applied to a list, I suggest using underscores rather than spaces in the attribute NAME as that are easier to spot than a space, you can use spaces as normal in the description/title of an attribute of course.
My sites:- http://wharfedalefestival.co.uk, http://ilkleygardeners.org.uk, http://emergencyaid.net, http://dragonrider.co.uk
Latest phpList version is now 3.0.12 (3 February 2015) and requires a minimum of MySQL 5.0 and PHP 5.3.x
Dragonrider
Moderator
 
Posts: 3460
Joined: 6:58am, Sun 02 Jul, 2006
Location: Ilkley, West Yorkshire, United Kingdom

Re: Plugins

Postby TBotNik » 12:15am, Mon 14 Oct, 2013

DR,

My problem really has to do with the design here. Assumptions were made in the design, which is violation of 2nd cardinal rule of development. Since the modern generation does not know these rules here they are:

  • Never Never Never Never Never Never Never Never be ambiguous,
  • Never Never Never Never Never Never Never Never assume anything.
That said, the assumption made in the initial design of PHPList is:

the list user would "self enroll",

which will 9 times out of 10 not be the case, but PHPList admins/developers will be using it for other information/marketing efforts.

I use it for:

  • A newsletter I send out for a discipleship group meeting,
  • My RedNeck Santa newsletter,
  • Searching for Jobs/Projects,
  • Announcements of tech releases,
  • Marketing for product/services,
  • Consulting project searches,
  • Family tree newsletter,
  • Tracking for fund-raising.
Therefore since all my lists "dump" from my email client (with over 5M emails), I must have users that are not tied to a "login", where as now I have to force a "dummy" password and the Fname, Lname are not in the "users_users" table but in the "users_user_attributes" table and therefore direct imports are not possible from any address book, but require separate processing to load and sync both tables, where "users_users" must be loaded row-by-row, the new row "id" retrieved then this "id" must be used in loading "users_user_attributes" but the only field in this table is the "value" table which is not Fname, Lname but shoves both into this field.

Therefore in composing a message to a client it is impossible to personally address the client by first name as that does not exist in the DB anywhere.

I am therefore going to have to mod the existing tables to allow what is needed for correct processing and personalization of email message.

Oh yes I am on version 2.10.17, not 3.05. Noticed too many processing and other errors, so do not consider 3.05 stable yet, so not upgrading till it is, since it took me months to find and fix all the errors in my current version. Giving 3.05 at least 6 more month to stabilize before upgrading.
TBotNik
PL Nut
 
Posts: 33
Joined: 9:26pm, Thu 04 Oct, 2012

Re: Plugins

Postby TBotNik » 7:47pm, Wed 16 Oct, 2013

Dragonrider wrote:plugins for the previous versions of phpList are found in the Plugins forum and are normally stored in the admin/plugins directory on the server, the path to which is set in the config/config.php file.

[FIRST_NAME] and [LAST_NAME] can be set via attributes and then applied to a list, I suggest using underscores rather than spaces in the attribute NAME as that are easier to spot than a space, you can use spaces as normal in the description/title of an attribute of course.

DR,

Found the place for entry of FName, LName in the "Add user" form, but still can not find it in the DB. Went to the MySQL Information_schema and ran:

SELECT * FROM `COLUMNS` WHERE `column_name` LIKE '%name%' AND `column_name` LIKE '%first%';

and

SELECT * FROM `COLUMNS` WHERE `column_name` LIKE '%name%' AND `column_name` LIKE '%f%';

Nothing shows from the "phplistdb", so if PHPList is storing these values somewhere, what ever is going on or where it is going is leaving me clueless right now!

Cheers!

TBNK
TBotNik
PL Nut
 
Posts: 33
Joined: 9:26pm, Thu 04 Oct, 2012

Re: Plugins

Postby TBotNik » 7:58pm, Wed 16 Oct, 2013

DR,

Never mind figured it out. I had added "First_Name" (id=15) and "Last_Name" (id=16) in the "phplist_user_attributes" table and thus they appeared in my "Add User Form".

I see that when these and "Name" (id=1) is filled out these 3 ids, plus the phplist_user_user" id show up in the "phplist_user_user_attributes" table, which is a true "cross reference" table.

At least I'm not clueless anymore!

Cheer!

TBNK
TBotNik
PL Nut
 
Posts: 33
Joined: 9:26pm, Thu 04 Oct, 2012

Re: Plugins

Postby Dragonrider » 8:16pm, Wed 16 Oct, 2013

As you've found, until you create the attributes, they don't exist in the database.

The reason for this is simply because the creators of phpList don't know every possible name of the attributes you may wish to use, so just create the minimum defaults such as NAME and EMAIL. The rest, are up to you.
My sites:- http://wharfedalefestival.co.uk, http://ilkleygardeners.org.uk, http://emergencyaid.net, http://dragonrider.co.uk
Latest phpList version is now 3.0.12 (3 February 2015) and requires a minimum of MySQL 5.0 and PHP 5.3.x
Dragonrider
Moderator
 
Posts: 3460
Joined: 6:58am, Sun 02 Jul, 2006
Location: Ilkley, West Yorkshire, United Kingdom


Return to Developers Space

Who is online

Users browsing this forum: No registered users and 1 guest

cron