Forum Replies Created

Viewing 15 replies - 1 through 15 (of 18 total)
  • Thread Starter obewanz

    (@obewanz)

    Thank You, I look forward to seeing that feature implemented.

    Incidentally, your plugin/app is the easiest to configure and work with that I have seen to date (while evaluating options), especially given the vast flexibility present. Well organized and highly functional for a large array of use scenarios – Kudos! I hope to be able to deploy this live in the future.

    Thread Starter obewanz

    (@obewanz)

    Devin, Thank You!

    I can’t speak for others, but if there is a way to push that into the latest version that is still compatible back to 5.8 that would be even better for me. I’m currently beta testing 6.0, but have had a couple issues that I hope to have worked out in a week or so that will allow me to upgrade to that core distribution… Since I have multiple WP sites, will have to test those changes across all of them before I can declare success – just in case!

    “My previous suggestion would be: “New Year’s Eve” will have the generated class: “new-years-eve”. This would save the need to add individual classes and keep it closely linked to the custom label.”

    That would work…

    @designextreme I’m not exactly sure how you would implement those custom day names, and maybe we are saying the same thing, but on the off chance we are not, here is my logic behind what I stated above:

    If you allow the admin to assign their own className, css would be very straightforward, you already have to read the custom day name anyway so not a big deal to grab that className at the same time, and what that does is allows every holiday to have it’s own color (or even background field) customization based on very specific selectors to any given holiday, either grouped together – as in ALL xmas gets the same styling regardless of year – OR – you can assign xmas23 and xmas24 so that both years could have different presentations but similar scheme. If you use only the custom day name and or add random letters – it becomes much more difficult to manage. As a business owner who manages my own website – it’s very important to me to keep maintenance needs of the site to a minimum. Since my scheduled hours don’t really change all that much, I’d be better off to use a custom html widget and just format a table of hours and list my closed holidays below. Your plugin allows me to present a dynamic presentation that I find useful – but there is a limit on how much time I can or am willing to spend on the whole issue.

    That said, here is a link to an example of what could be accomplished using the schema I presented in my previous post. I didn’t bother to change the day names from say “Tuesday” to “Christmas” – but I think everyone can see the possibilities here. To further elaborate on the idea of what could be done more simply with this approach would be using a css background and position style to place a graphic behind the text – such as a somewhat transparent Santa and Sleigh or Holly Leaves behind the word “Christmas” – by targeting the day-name class plus the custom className (day-name xmas), or a Turkey for Turkey day, Pumpkin or Spider Web for Halloween, etc. Whatever the business wants to do. All very simple if you incorporate that custom class name for the styling, please you can retain specificity in the selectors.

    https://media.groundworxpros.com/public/lms-page-capture_exp-were-open-custom.jpg

    Using something like “date-2023-03-08” would get cumbersome and unwieldy very fast in my opinion. I don’t always remember what date Memorial Day or Labor Day falls on, trying to target those classes using the date in a stylesheet could quickly require too much effort for my taste. I’d much rather say “labor-day” or “memorial-day” or “thxgiving” in my stylesheet to target those classes for customization.

    Remember, customizing the stylesheet is a secondary step – visually removed from the holiday entry itself. And if I want to come back later to tweek the css – now I have to remember what dates go to what holidays, etc. Why should I have to handle the translation – computers are far better (and more efficient) at matching stuff up than I am.

    • This reply was modified 1 year, 8 months ago by obewanz. Reason: clarifying
    • This reply was modified 1 year, 8 months ago by obewanz.

    I would like to see the ability to add your own holiday schedule for whatever period of time you like and select whether you are open for business on a given holiday (and specific hours if different from regular hours). To elaborate, say you close early on Christmas Eve, instead of the open widget showing:

    Monday | 9am – 5pm
    Tuesday | 9am – 5pm
    Wednesday | 9am – 5pm
    Thursday | 9am – 5pm

    Instead it would show something like this:

    Monday | 9am – 5pm
    Christmas Eve | 9am – 12pm
    Christmas Day | Closed
    Thursday | Closed

    I would think a form similar in layout to the following could give you the “inputs”:

    Holiday Open-Time Close-Time Date ClassName
    Christmas Eve 9:00am 12:00pm 12-24-2023 xmase
    Christmas Day Closed 12-25-2023 xmas

    Leave the holiday name empty to display the regular day name – so as above that would be “Thursday”. Obviously the syntax of the date/time formats used are illustrative. Theoretically the “calendar” could be loaded up for several years in advance.

    Also the ClassName field would be so you could target certain elements (holidayName / holidayHours) with css to make them stand out in the display:
    /* OPEN HOURS CUSTOM HOLIDAYS CSS */
    .day-name.xmas {color: green;}
    .day-name.xmase{color:red}
    .hours.xmas,.hours.xmase {background-color:green;color:white;}

    And that would appear in the widget output like so:

    <th class=”day-name xmase”>Tuesday</th>
    <td class=”hours xmase”>9am – 1pm</td>

    If this could be stored, read and cached from a text file at the server with an expiry value for cache to expire and reload, I would think this could be a valuable feature.

    • This reply was modified 1 year, 8 months ago by obewanz.
    Thread Starter obewanz

    (@obewanz)

    Thanks! works like a charm.

    Thread Starter obewanz

    (@obewanz)

    Well… Once I find a suitable replacement this plugin will be going to the trash bin in expedited fashion!

    I don’t know what kind of “upgrades” you are supplying, but until I decided to address the “Javascript” issue (yes an older version of Firefox) I didn’t realize how bloated this plugin really was! Sad :'(

    Thread Starter obewanz

    (@obewanz)

    Thank you for that… but…

    1. It requires an annual subscription (SAAS) which I don’t do – period.
    2. I don’t want clients to have to “log in” or “create accounts” to be able to view the documents.

    I guess I’ll have to finish the solution I started with.

    Thread Starter obewanz

    (@obewanz)

    Thanks for looking into the issue, though I am beginning to feel as though this is an exercise in futility as you seem to not understand the point. Let me attempt to address your most recent response to this issue.

    ”?if you’re expecting one element to be a child of another, this may be set in the CSS as such.” <– This however is simply NOT true.

    CSS is a presentation layer, and as such has no ability to make one element the child of another, it can only target existing elements as are output by the html generator or modified by some other method before output to the DOM. (If you can use CSS to target an element or id generated or modified by say javascript AFTER the DOM output is completed – I would love to see how you do that.) The point is, if a wrapping parent element is not included in the output – then there is NO HIERARCHY that can be targeted using the CSS to modify specific elements of the output, in this case the widget output, because any target to a class such as “widget_title” will target ALL “widget_titles”… but I repeat myself from the previous discussion.

    Also, widgets are not going away – there is simply no way that a theme developer can write replacements for all of the popular widgets, let alone all of the potential widgets a site owner or administrator would want to deploy on their website – no matter what the theme developers want you to believe. And trying to wrap your widget into a theme under that premise would indeed be the end of your plugin – as stated previously – someone (if I’m not that person) would fork your existing plugin to fill that void.

    In one last effort to help you visualize the issue – the following graphics and code are provided to illustrate how your widget appears to be different from other widgets that I currently use, because it is lacking a parent wrapping element and therefore cannot be customized by CSS beyond the hours table:

    Customization of the widget (custom html) highlighted by the arrows (grey background with rounded corners) can only be achieved because the widget html output is wrapped in a uniquely identified wrapper element (html code will follow):

    #custom_html-2 {
     background: #efefef;
     border-radius: 8px;
     padding: 5px; 
    }

    Moving to your widget specifically the only element that can be uniquely identified is the table output for hours:

    /* CUSTOM OFFICE HOURS WIDGET STYLE CHANGES */
    table.opening-hours-widget {
      border-collapse: separate;
      border-spacing: 0;
      border: 1px solid #ccc;
      -webkit-border-radius:7px;
      -moz-border-radius:7px;
      border-radius:7px;
      -webkit-box-shadow:3px 3px 6px -1px rgba(0,0,0,0.2);
      -moz-box-shadow:3px 3px 6px -1px rgba(0,0,0,0.2);
      box-shadow:3px 3px 6px -1px rgba(0,0,0,0.2);
    }
    .opening-hours .day-name {padding-inline-start:0.8em!important;}
    

    Incidentally with CSS I cannot SPAN columns in your output table and therefore cannot add a footer that would equally span both columns for any purpose – such as to direct the user to a scheduler app/plugin to see where they might schedule an inspection, or for the construction company, an estimate.

    Here is the html output that produces the above sidebar (cleaned up for brevity and illustration):

    <div id="secondary" class="widget-area sidebar" role="complementary">
    
    	<h2 class="widget-title">Business Hours</h2>
    	<table class="opening-hours opening-hours-widget">
    	<tbody><tr class="day monday past weekday">
    		<th class="day-name">Monday</th>
    		<td class="hours">9am – 5pm</td>
    	</tr>
    	<tr class="day sunday tomorrow future weekend closed">
    		<th class="day-name">Sunday</th>
    		<td class="hours">Closed</td>
    	</tr>
    	</tbody>
    	</table>
    
    		<aside id="recent-posts-2" class="widget widget_recent_entries">
    		<h2 class="widget-title">Recent News</h2>
    		<ul>
    			<li>[CONTENT REMOVED]</li>
    		</ul>
    		</aside>
    
    		<aside id="categories-2" class="widget widget_categories">
    		<h2 class="widget-title">Article Categories</h2>
    		<ul>
    			<li class="cat-item cat-item-5">[CONTENT REMOVED]</li>
    		</ul>
    		</aside>
    		
    		<aside id="archives-2" class="widget widget_archive">
    		<h2 class="widget-title">Archives</h2>
    		<ul>
    			<li>[CONTENT REMOVED]</li>
    		</ul>
    		</aside>
    
    		<aside id="custom_html-2" class="widget_text widget widget_custom_html">
    		<h2 class="widget-title">Trusted Area Professionals</h2>
    		<div class="textwidget custom-html-widget">
    			<p>[CONTENT REMOVED]</p>
    		</div>
    		</aside>
    </div>

    As you can see by the above code, if I want to target something specifically within the archives widget – I can use #archives-2 and then whatever element is available such as .widget-title to customize that specific element – the title of the Archives Widget… Your code output has no such specificity because it has no such wrapper element.

    If I’m forced to go look into some standard to fix this issue with your plugin – then I might as well fork the plugin and fix it myself so I never have to worry about some future update breaking the functionality that I had to develop for the two websites that will be utilizing this type of feature. (Some of your comments above don’t give me <span style=”text-decoration: underline;”>warm fuzzies</span> that the future of this plugin is all that solid in the first place.) That said, I would still much rather YOU FIX the above illustrated issue so that I can move on with building these two websites, rather than being forced into coding for them.

    Thread Starter obewanz

    (@obewanz)

    Very good… I have stumbled upon OnePress a few months back and found it to be an exceptional free theme. As is the case with most free themes these days, the paid version unlocks a lot of seemingly useful features, but it is not required to build an impressive website. They also take a unique (as far as I know) approach to adding those features by providing them in a plugin. I haven’t purchased the plugin yet – but I do intend to do so in the near future just to see how some of those features look and whether they really are worth the $50-$60 ish price tag.

    One of my sites uses a Hemingway theme (which might be a fork as I remember having a lot of difficulty making it look not so amateurish) – but I plan to replace that theme with OnePress once I get a little more experience making the OnePress theme do things I want.

    Thread Starter obewanz

    (@obewanz)

    Hmmm… Interesting… Because I run 7 different wordpress sites using 4 different themes and every widget, but yours, is wrapped in a uniquely identifiable element. The point is, without the widget output being wrapped in a unique element of some kind, your suggestion to use #secondary won’t work to target just your widget as any rule without more specificity than #secondary will be targeting all widgets with the sidebar. Looking at the html output of the We’re Open widget, the most specificity that can be accomplished is to target the hours table itself with “table.opening-hours-widget“. (Not to say you can’t target elements within the table – see last code block earlier.) However, if you want to target the We’re Open widget’s TITLE for customization – you cannot – without affecting all of the other titles in the sidebar because the widget is missing a wrapper. But if I want to change the way the “Article Categories” title is displayed, maybe to give it more visual impact for instance, I can use something like “.widget_categories h2.widget-title {color: red;}” to specifically target just the H2 element of the widget title (Note, in every case of the widgets I have deployed on those 7 sites I would not need to use the h2 element since none of them have any sub-heading text.) I have done exactly that sort of thing with this rule used to shade the entire widget output and round the corners to set it apart from the rest of the sidebar elements.

    #custom_html-2 {
     background: #efefef;
     border-radius: 8px;
     padding: 5px;
    }

    Since the We’re Open widget doesn’t have a wrapper equivalent to #custom_html-2 it is impossible to accomplish the same thing on the We’re Open widget. The best I can do is target the hours table, the title, or the entire sidebar.

    How the other widgets accomplish this is not something I have not looked into – seems to me it should be a standard somewhere in the WordPress developer guide.

    • This reply was modified 1 year, 10 months ago by obewanz.
    Thread Starter obewanz

    (@obewanz)

    Your widget is the only one loaded on my development site that isn’t being loaded in an aside wrapper element…

    <div id="secondary" class="widget-area sidebar" role="complementary">
    	<h2 class="widget-title">Business Hours</h2><table class="opening-hours opening-hours-widget">
    	<tr class="day monday past weekday">
    		<th class="day-name">Monday</th>
    		<td class="hours">9am – 5pm</td>
    	</tr>
    	<tr class="day tuesday past weekday">
    		<th class="day-name">Tuesday</th>
    		<td class="hours">9am – 5pm</td>
    	</tr>
    	<tr class="day wednesday past weekday">
    		<th class="day-name">Wednesday</th>
    		<td class="hours">9am – 5pm</td>
    	</tr>
    	<tr class="day thursday past weekday">
    		<th class="day-name">Thursday</th>
    		<td class="hours">9am – 5pm</td>
    	</tr>
    	<tr class="day friday past weekday">
    		<th class="day-name">Friday</th>
    		<td class="hours">9am – 5pm</td>
    	</tr>
    	<tr class="day saturday past weekend closed">
    		<th class="day-name">Saturday</th>
    		<td class="hours">Closed</td>
    	</tr>
    	<tr class="day sunday today weekend closed">
    		<th class="day-name">Sunday</th>
    		<td class="hours">Closed</td>
    	</tr>
    </table>
    
    		<aside id="recent-posts-2" class="widget widget_recent_entries">
    		<h2 class="widget-title">Recent News</h2>
    		<ul>
    											<li>
    					<a href="/common-electrical-conductor-types/">Common Electrical Conductor Types</a>
    									</li>
    											<li>
    					<a href="/backdrafting/">Backdrafting</a>
    									</li>
    											<li>
    					<a href="/aluminum-wiring/">Aluminum Wiring</a>
    									</li>
    											<li>
    					<a href="/afci-testers/">AFCI Testers</a>
    									</li>
    											<li>
    					<a href="/10-easy-ways-to-save-money-and-energy-in-your-home/">10 Easy Ways to Save Money & Energy in Your Home</a>
    									</li>
    					</ul>
    
    		</aside><aside id="categories-2" class="widget widget_categories"><h2 class="widget-title">Article Categories</h2>
    			<ul>
    					<li class="cat-item cat-item-5"><a href="/c/home-and-commercial-building-systems/electrical/">Electrical</a>
    </li>
    	<li class="cat-item cat-item-3"><a href="/c/energy/">Energy</a>
    </li>
    	<li class="cat-item cat-item-7"><a href="/c/home-and-commercial-building-systems/heat-air-ventilation/">Heat / Air / Ventilation</a>
    </li>
    			</ul>
    
    			</aside><aside id="archives-2" class="widget widget_archive"><h2 class="widget-title">Archives</h2>
    			<ul>
    					<li><a href='/2022/12/'>December 2022</a></li>
    			</ul>
    
    			</aside>
    			<aside id="custom_html-2" class="widget_text widget widget_custom_html"><h2 class="widget-title">Trusted Area Professionals</h2><div class="textwidget custom-html-widget">
    			<p>Insurance: Farm Bureau Agent</i></a></p></div>
    			</aside>
    </div>

    So, just to recap the html output above – 4 out of 5 widgets are wrapped in an aside element.

    The bonus is that you can be specific when targeting a widget for CSS customization, which may also allow you to change the way the sidebar components are displayed in a variety of ways within a given theme.

    I can choose to add a color to the background of the custom html widget simply by targeting the id “custom_html-2” or I can target the class “widget_custom_html” for more specific customization.

    As an example, I can use the following CSS to give the hours table rounded corners with a shadow:

    table.opening-hours-widget {
     border-collapse: separate;
     border-spacing: 0;
     border: 1px solid #ccc;
     -webkit-border-radius:7px;
     -moz-border-radius:7px;
     border-radius:7px;
     -webkit-box-shadow:3px 3px 6px -1px rgba(0,0,0,0.2);
     -moz-box-shadow:3px 3px 6px -1px rgba(0,0,0,0.2);
     box-shadow:3px 3px 6px -1px rgba(0,0,0,0.2);
    }
    .opening-hours .day-name {
     padding-inline-start:0.8em!important;
    }

    …but I cannot target the widget with enough specificity to use a pseudo element to add something like a footer that would tell folks to check my schedule for availability… well, actually I can target the table, but because the output is in columns, I cannot make the footer span the width of the table. If I could target the widget using an aside id and/or class (as other widgets in the first code section) I could do this without modifying the widget code. To further illustrate – the following code shows how I customize the custom html widget to set it apart from the other widgets using this technique:

    /* CUSTOM WIDGET ASIDE CHANGES */
    div.custom-html-widget.widget-title {
     text-align: center;
     text-transform:uppercase;
    }
    div.custom-html-widget a.tap-link {
     color: #bb133e;
     text-decoration: none;
    }
    div.custom-html-widget a.tap-link:hover {
     color: #e10038;
     text-decoration: none;
    }
    #custom_html-2 {
     background: #efefef;
     border-radius: 8px;
     padding: 5px;
    }
    • This reply was modified 1 year, 10 months ago by obewanz.
    • This reply was modified 1 year, 10 months ago by obewanz.
    Thread Starter obewanz

    (@obewanz)

    STILL NOT RESOLVED…
    I tried your “Solution” and it does not work.

    I would upload screenshots proving such if I could, but I cannot. I stand by EVERYTHING I said earlier. Hopefully when folks browse the support threads they will figure this out before they try to use this theme.

    Oh, and apparently my “attitude” was well warranted… marking a support post after a single reply as solving the issue without confirming the “solution” works doesn’t mean the issue has been resolved!

    Thread Starter obewanz

    (@obewanz)

    Oh, I’m also going to ask – PLEASE DO NOT MARK THIS AS SOLVED – until someone from the developer side actually fixes the freakin’ code!

    I’m so tired of seeing one reply to an issue from the “Hemingway” folks that may or may not actually fix the problem and then the topic is marked as “Solved”! …NOT the correct way to deal with bugs and their fixes, or support, because then folks have to search through thousands of meaningless “solved” fixes that do nothing – it’s VERY frustrating!

    Thread Starter obewanz

    (@obewanz)

    The “MegaMenu” I was speaking of was on the www.ads-software.com website – not mine.
    Also I don’t have the time to provide you with details on “incremental” upgrade capability – that should be something WORDPRESS can figure out for itself.
    But thanks for the useless response…

Viewing 15 replies - 1 through 15 (of 18 total)