Our Blog

Frontend Edit Profile and Cimy User Extra Fields

Having trouble updating the avatar field from Cimy User Extra Fields from the front end? I recently used Frontend Edit Profile to allow users to edit profile on the frontend of a site (Yes, there are better options but we went with this) and everything saved fine… except the avatar field. After some rediculous troubleshooting, I found the simplest answer. Find the form which edits the profile, for me it was _form.php, and make sure the form is encrypted by adding the following to the form:


So your final opening of the form should look like this:

<form id=”your-profile” action=”#fep-message” method=”post”<?php do_action(‘user_edit_form_tag’); ?> enctype=”multipart/form-data”>

So simple!

The Events Calendar Pro: Filter By Category

Yes, we’ve all been anticipating the infamous ‘Filter Panel Add-on” for TEC Pro, but to no avail. I had promised a client this ability months ago when the add-on was supposed to be coming out, but since it has not and I still promised this delivery, I’ve come up with my own solution (with a little googling and some trial and error). It is likely not the cleanest or best solution, but it does work (Using TEC Pro 3.X).

In modules/bar.php I’ve added this code. It allows all categories in the events to be listed and selected, then send to the url on select, keeping the existing functionality of TEC in tact. Please note pretty permalinks must be enabled for this code.

//list terms in a given taxonomy
$taxonomy = ‘tribe_events_cat’;
$tax_terms = get_terms($taxonomy);
<div id=”tribe-bar-cats”>
<select id=”tribe-category” onchange=”if (this.value) window.location.href=this.value” >
<option selected value=”http://url.com/events/month/”>All</option>
<?php foreach ($tax_terms as $tax_term) { ?>
<option value=”<?php echo esc_attr(get_term_link($tax_term, $taxonomy)) ?>”>
<?php echo $tax_term->name ?>
<?php } ?>

To replace the selected option on page load, put this code in your footer:

<script type=”text/javascript”>
jQuery( document ).ready(function() {
var parts = window.location.href;
if (parts.length > 0) {

That should do it! Now we just add a bit of styling and it is good to go!