Forums / Addon Admin Tools / Social Contact Footer

Social Contact Footer

Views: 191

Results 1 to 5 of 5
2 Aug 2026, 4:15 PM
#1
dbltoe avatar

dbltoe

Totally Zenned

Join Date:
Jan 2004
Location:
N of San Antonio TX
Posts:
9,861
Plugin Contributions:
18

Social Contact Footer

This establishes a support thread for the Social Contact Folder 1.0.0 encapsulated mod.

Social Contact Footer — social-media icons and a blog link in your storefront footer, with an optional newsletter signup underneath.
Runs on Zen Cart v1.5.8 through v3.0.0 and PHP 7.4 through 8.5 from a single codebase. No template file is edited or overridden, and nothing is dropped into your admin/ or includes/ directories.
Storefront

  • Twenty networks. Each icon stays hidden until you supply a link, so a fresh install adds nothing visible.

  • You enter only the distinguishing part of an address — YourPageName, not https://www.facebook.com/YourPageName — because a short fragment is far harder to get wrong. A full address still works where a profile doesn't fit the pattern.

  • The contact icon needs no entry at all: your store already knows its own Contact Us page and owner address.

  • On-site links are first-class throughout — a page name, a store folder or a relative path is preferred over a full URL, since those survive a domain change and an http-to-https move.

  • Blog line with the wording built from your store name. Nothing to type.

  • Separate desktop and mobile icon sizes, four badge shapes, brand/monochrome/inherited colour, alignment, display order, link target, optional block background.

  • Real stylesheet, not inline styles — drop your own copy into your template's css/ folder and yours is used instead.

  • Off on a fresh install, so a half-configured block never goes live while you're still setting it up. Plugin Manager says "Mod Not Turned On" until you switch it on.
    Newsletter

  • Double opt-in, not optional. Nothing is sent, no customer account touched, no owner notice until the confirmation link is clicked.

  • Neither mail format is pre-selected, and that isn't configurable — pre-selecting one isn't lawful in the US. Enforced in the markup and again server-side.

  • The Subscribe button doesn't appear until an address is entered and a format chosen, done as progressive enhancement so a visitor without JavaScript still gets a working form.

  • The visible radio indicator is drawn by the stylesheet, because Zen Cart templates commonly hide native radios — the real input is still there for submission, focus and screen readers.

  • Honeypot plus dwell-time spam trap.

  • Confirmed subscribers are mirrored onto matching customer accounts, and two audiences are registered in the Newsletter Manager so subscribers without an account are reachable too — stock audience queries read the customers table alone and can't see them.

  • Every message carries a permanent unsubscribe link and asks the reader to whitelist your sending address.
    Admin — Tools → Footer Newsletter Subscribers

  • Filter, search, change status, delete, export CSV including each subscriber's unsubscribe URL.

  • CSV import for addresses collected on paper, with a printable sign-up sheet included. Imported people are created pending and sent the same confirmation request the footer form sends — there's no way to bulk-import an already-subscribed person.

  • Invite Registration — invite confirmed subscribers with no account to create one. They get a password and a single link that activates the account and lands on the login page; the account is unusable until they follow it. A re-send is offered while it's still pending.

  • Self-contained Read Me and a GitHub link as buttons in the Plugin Manager panel, both working before you install.

  • Idempotent installer: your settings are never reset by an upgrade, retired settings are cleaned up, and your subscriber table survives an uninstall unless you opt out.
    This mod is GPL-2.0 and all the images are simplified original drawings, not the official brand logos. That's done to avoid licensing and copyright infringement.

GitHub and download links will be added soon.

Need a hand with Zen Cart? Hire the team at myZenCartZone.com for upgrades, repairs, and custom plugins.
Zen Cart Certified hosting at myZenCartHost.com

27 Aug 2026, 1:35 AM
#3
dbltoe avatar

dbltoe

Totally Zenned

Join Date:
Jan 2004
Location:
N of San Antonio TX
Posts:
9,861
Plugin Contributions:
18

Re: Social Contact Footer

Social Contact Footer v1.0.1 is up.

If you're running v1.0.0, please grab this one, and please do it by hand, because your Plugin Manager isn't going to tell you about it. That part is our fault, and it's worth explaining.

We got the Plugins Library ID wrong in v1.0.0. The manifest went out carrying 2249, which belongs to a completely different plugin (Free Shipping Options Clone). Plugin Manager saves that number and asks the version server about it, so every v1.0.0 store has been quietly checking for updates to somebody else's shipping module. v1.0.1 carries the right ID, 2447.

There's a wrinkle for older carts. On Zen Cart v1.5.8, v2.0, and v2.1, Plugin Manager writes that ID only when it first creates the plugin's row, and never refreshes it after that, so installing v1.0.1 on top of v1.0.0 won't clear the wrong value. If you're on one of those three, delete the zc_plugins/SocialContactFooter/ directory from your store, open Modules > Plugin Manager once so the stale row gets swept away, then upload the v1.0.1 files and install as usual. On v2.2 and later the value gets rewritten on every scan, so a normal upgrade is all you need. Either way, this only affects the update notice. The plugin itself works the same.

Your settings are safe. The installer never overwrites a configuration value you've chosen, and your subscriber list is left alone.

Also in v1.0.1, subscriber addresses are now escaped before they go into the admin message you see after sending or resending a registration invitation. We'd rather be straight about this one than let it sound worse than it is, because it wasn't exploitable. Both ways an address can get into the table, the storefront form and the CSV import, run it through zen_validate_email() first, and that won't accept angle brackets. The message also prints as ordinary text, not inside an HTML attribute. So there was nothing a visitor could do with it. The escaping is just what should have been there all along, and it keeps the message safe if an address ever shows up from somewhere that doesn't validate.

The rest is smaller. The three emails this plugin sends, the confirmation request, the welcome message, and the registration invitation, can now carry a header image of your own. There's no image at all unless you add one under Newsletter E-Mail Header Image on the subscribers page. Your store's own email/header.jpg is never read and never written, so nothing else your store sends is affected. Beyond that, there are spelling corrections throughout the plugin and the docs, including matching Zen Cart's "E-Mail" in the labels, and the readme no longer mentions an "Email field" that doesn't exist. That icon is built from your store's own contact address and has no setting of its own.

Full details are in the changelog, and the source is on GitHub at github.com/dbltoe/Social_Contact_Footer, which now also carries the test harnesses we run against PHP 7.4 through 8.5 before every release. Those are what caught the wrong plugin ID, and they won't let it happen again.

Still Zen Cart v1.5.8 through v3.0.0 and PHP 7.4 through 8.5 from one codebase.

If you run into trouble, post here and we'll help.

Need a hand with Zen Cart? Hire the team at myZenCartZone.com for upgrades, repairs, and custom plugins.
Zen Cart Certified hosting at myZenCartHost.com

15 Sep 2026, 6:42 PM
#4
dbltoe avatar

dbltoe

Totally Zenned

Join Date:
Jan 2004
Location:
N of San Antonio TX
Posts:
9,861
Plugin Contributions:
18

Re: Social Contact Footer

Social Contact Footer v1.0.3 is up.

This one is a single markup change, and nothing looks different afterward. The two footer headings, the icon heading and the newsletter heading, are now h2 instead of h3. The footer is a section of the page, so its headings should be one level below the page's h1. As h3, they skipped a level on any page where the last heading before the footer was the h1 itself, on shopping cart pages, or typically on the contact page, and accessibility checkers reported it on every one of those pages. An h2 can only ever follow the h1 or something deeper, so it's right whatever your template puts above the footer. The size of those headings comes from the stylesheet, not from the tag, so they render exactly as they did.

If you're on v1.0.1, you'll get the update notice in Plugin Manager as usual. Upload the new zc_plugins/SocialContactFooter/v1.0.3/ folder next to the old one and upgrade from Modules > Plugin Manager. Your settings and your subscriber list stay put.

There was also a v1.0.2 in between, available only on GitHub. It changed documentation, not code: the changelog and the compatibility notes had described a red banner in the Plugin Manager panel that never existed (the only "off" indicator is the "Mod Not Turned On" suffix on the plugin name), a code comment had the wrong Zen Cart version for one notifier, and the LICENSE file pointed to a zen-cart.com URL that no longer exists. Since none of that affected what runs on your store, it never reached the Library. Everything from it is folded into v1.0.3.

If you're still on v1.0.0, please read post #3 above first. The wrong Plugins Library ID in that release means Plugin Manager can't tell you about this update, and on Zen Cart v1.5.8, v2.0, and v2.1, you'll need the delete-and-reinstall steps described there to clear it.

Release notes and source: https://github.com/dbltoe/Social_Contact_Footer/releases/tag/v1.0.3

Need a hand with Zen Cart? Hire the team at myZenCartZone.com for upgrades, repairs, and custom plugins.
Zen Cart Certified hosting at myZenCartHost.com

6 Oct 2026, 10:58 PM
#5
dbltoe avatar

dbltoe

Totally Zenned

Join Date:
Jan 2004
Location:
N of San Antonio TX
Posts:
9,861
Plugin Contributions:
18

Re: Social Contact Footer

Plugin ID fix for v1.0.0 and v1.0.1 downloaded from the Plugins Library

If you downloaded Social Contact Footer v1.0.0 or v1.0.1 from the Plugins Library before 6 October, its manifest.php carries the wrong Plugin ID. Plugin Manager uses that ID to check for updates, so it couldn't tell you when v1.0.2 and v1.0.3 came out. The Library's packaging step wrote the wrong number, and the Zen Cart team fixed its copies on 6 October. Copies from GitHub and myzencartzone.com always carried the right ID, 2447, and so does the Library's v1.0.3.

To check yours, open the manifest.php in your zc_plugins/SocialContactFooter/ version folder and look at the 'pluginId' => line. If it doesn't say 2447, here's the fix. On Zen Cart 2.2.0 and later, upgrade to v1.0.3 and open Plugin Manager once; it picks up 2447 by itself. On 1.5.8 through 2.1.x, Plugin Manager keeps the ID it recorded when it first saw the plugin, so run this line in Admin > Tools > Install SQL Patches (it adds your table prefix itself):

UPDATE plugin_control SET zc_contrib_id = 2447 WHERE unique_key = 'SocialContactFooter';

Latest release: https://github.com/dbltoe/Social_Contact_Footer/releases/tag/v1.0.3

Need a hand with Zen Cart? Hire the team at myZenCartZone.com for upgrades, repairs, and custom plugins.
Zen Cart Certified hosting at myZenCartHost.com